カスタム カーソル アダプタを使用してローカル データベースからデータを取得ListView
し、.Activity
ListActivity
ListView
lv.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position, long id)
{
Log.i(tag, "position = " + position);
Log.i(tag, "id is : " + id));
}
});
データベースの列が次のとおりであると仮定します。
ID、名前、姓、生年月日、身長、性別、生年月日、婚姻状況。
ただし、リストビュー (row.xml) には名前と姓のみを表示しています。しかし、ユーザーがリスト内の特定の行をクリックするたびに、クリックされた行の ID や性別など、残りのデータも取得したいと考えています。
問題は、リストのデータベース行からすべての情報を表示していないことですが、ユーザーがリストを押したときに、そのリストのデータの一部を取得する必要があります。どうすればここでそれを行うことができますか?
私はListActivityではなく、Activityだけであるため、以下の方法は機能しません。
public void onListItemClick(ListView l, View v, int position, long id)
{
super.onListItemClick(l, v, position, id);
Cursor c = ((SimpleCursorAdapter)l.getAdapter()).getCursor();
c.moveToPosition(position);
//get the data...
}