我有一个数据库,我通过listview类型的东西显示,我将如何添加OnClickListener?
这是代码:
public void DisplayRecord(Cursor c) {
Cursor c1 = DBAdapter.getAllRecords();
startManagingCursor(c1);
String[] from = new String[] { DBAdapter.KEY_ITEM };
int[] to = new int[] { R.id.text1 };
SimpleCursorAdapter notes = new SimpleCursorAdapter(this, R.layout.row,
c1, from, to);
setListAdapter(notes);
}
或者甚至可能吗?
我将如何按字母顺序对此列表进行排序?
答案 0 :(得分:1)
您需要将onItemClickListener添加到listview。
yourListVeiw.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// id is the clicked item id
Cursor clickedItem = DBAdapter.getRecord(id);
// DO what you need to do
}
为了让列表有序,你应该在DBAdapter中实现一个getSortedRecords(),添加一个order by子句。
答案 1 :(得分:1)
我如何添加OnClickListener?
您希望将OnItemClickListener与ListView一起使用,或者由于您使用的是ListActivity或ListFragment,因此可以覆盖OnListItemClick
。
@Override
public void onListItemClick(ListView l, View v, int position, long id) {
// Do something
}
我将如何按字母顺序对此列表进行排序?
在DBAdapter.getAllRecords();
答案 2 :(得分:0)
你当然可以,但是你应该在ListView上设置你的监听器,而不是提供其数据的适配器。
在Android上查看setOnItemClickListener