獲取數據我有一個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,姓名,出生日期,身高,性別,placeOfBirth,maritalStatus。
但是,我在我的listview(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...
}
我不完全理解你的問題的第一部分。關於第二部分:您不需要ListActivity。只需將您的Adapater存儲爲您的Activity類或Fragment的數據成員即可。 – tiguchi
@NobuGames我更新了這個問題看看。 – tony9099