我正在開發一個Android應用程序。確定點擊ListActivity方法onListItemClick的項目
我有幾個對象加載在ListActivity
上。我想知道點擊事件onListItemClick
的項目。
我看到方法onListItemClick
有一個叫id的參數。我如何設置這個ID?
我的對象由一個ID標識,如何將此ID添加到listItem?
謝謝。
我正在開發一個Android應用程序。確定點擊ListActivity方法onListItemClick的項目
我有幾個對象加載在ListActivity
上。我想知道點擊事件onListItemClick
的項目。
我看到方法onListItemClick
有一個叫id的參數。我如何設置這個ID?
我的對象由一個ID標識,如何將此ID添加到listItem?
謝謝。
什麼是您的列表數據的來源?如果您使用的是遊標 - 那麼在onListItemClick(ListView l, View v, int position, long id)
中傳遞的ID將自動成爲遊標行的ID。
使用以下內容;
listView.getItemAtPosition(position);
其中listView是列表視圖的名稱。
不,它不會爲我工作。例如,我在位置12上放置了id = 1的對象。我不想知道位置,我想知道特定位置上的對象的id。 – VansFannel 2010-10-25 11:02:09
如果SectionObj是您希望稍後訪問的對象,請在設置源時將其設置在適配器中。
ArrayList<SectionObj> li
ArrayAdapter<SectionObj> adapter=new ArrayAdapter<SectionObj>(getApplicationContext(),android.R.layout.simple_list_item_1, li);
setListAdapter(adapter);
然後在烏拉圭回合監聽方法..
protected void onListItemClick(ListView l, View v, int position, long id) {
SectionObj o=(SectionObj)getListView().getItemAtPosition(position);
}
我沒有使用遊標。我正在使用一個字符串數組。 – VansFannel 2010-10-25 11:03:57
然後假定您的數組在其索引之一中包含該ID,請使用position變量訪問該數組。即myArray [position] [0](如果您的ID是數組的索引0) – Dave 2010-10-25 11:07:19
您是否明白我的意思?源數據必須有您的對象ID開頭,無論它是一個String []或ArrayList,或者光標或任何其他來源。 – Dave 2010-10-25 11:16:08