私は探しているものがわからないためかもしれませんが、私が推測するものを見つける方法がわかりませんアンドロイドで非常に簡単にする必要があります。アイテム固有のデータを使用してアクティビティを切り替える方法
私は画面に表示するデータの配列を持っています。このデータは、データベースのキー、名前、イメージを保持するクラスです。
私は現在、このデータをImageViewとTextViewとして表示しています。私は配列をループし、画像とテキストを含むTableLayoutに新しい行を追加します。
画像とテキストの両方をクリック可能にして、新しいアクティビティに変更したいと思います。
この新しいアクティビティは、正しいデータを表示するためにクリックされた行のデータベースキーを知る必要があります。ここで
は、私がこれまで持っているものです。
private void fillSuggestionTable(TableLayout tabSuggestions, Suggestion[] arrToAdd)
{
for(int i = 0; i < arrToAdd.length; i++)
{
/* Create a new row to be added. */
TableRow trSuggestion = new TableRow(this);
trSuggestion.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
/* Create objects for the row-content. */
ImageView imgDisplayPicture = new ImageView(this);
ImageHandler.loadBitmap(arrToAdd[i].strImageURL, imgDisplayPicture);
imgDisplayPicture.setLayoutParams(new LayoutParams(50,50));
TextView txtArtistName = new TextView(this);
txtArtistName.setText(arrToAdd[i].strName);
txtArtistName.setTextColor(Color.parseColor("#000000"));
/* Add data to row. */
trSuggestion.addView(imgDisplayPicture);
trSuggestion.addView(txtArtistName);
/* Add row to TableLayout. */
tabSuggestions.addView(trSuggestion, new TableLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
}
}
いいえ、私がTableviewを使用している唯一の理由は、当時の私にとって最も理にかなったものでした。 私はidがそのリストのitmeのidだろうと推測していますか?だから、リストアイテムのIDをデータベースのキーに設定している限り、ListViewを塗りつぶすと、簡単にIDを取得できますか? –
これよりも簡単です。以下で説明するようにCursorAdapterを拡張するだけです。データベースからカーソルを渡すと、listViewのすべてのビューのIDプロパティが設定されます。 http://droiddevelop.tumblr.com/post/12322798864/part-136-making-a-custom-cursor-adapter – JRaymond