我正在开发一个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