【发布时间】:2016-06-08 13:49:23
【问题描述】:
我正在开发一个网络浏览器,我刚刚添加了书签。我想在列表视图中添加一个上下文菜单来打开和删除书签。我已经准备好代码,但是当我点击上下文菜单时,它会打开/删除顶部项目。我真的很难让它恰到好处。
任何帮助将不胜感激。
谢谢 杰克
【问题讨论】:
-
刚刚添加代码
标签: android listview contextmenu
我正在开发一个网络浏览器,我刚刚添加了书签。我想在列表视图中添加一个上下文菜单来打开和删除书签。我已经准备好代码,但是当我点击上下文菜单时,它会打开/删除顶部项目。我真的很难让它恰到好处。
任何帮助将不胜感激。
谢谢 杰克
【问题讨论】:
标签: android listview contextmenu
您可以执行以下操作来获取所选书签的 ID:
@Override
public boolean onContextItemSelected(MenuItem item) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
int position = info.position;
Cursor selectedBookmark = (Cursor) mAdapter.getItem(position);
int selectedBookmarkId = selectedBookmark.getInt(0); // index 0, assuming your first column is the ID
/ ...
}
得到ID后,可以用它从DB中删除选中的item:
long ret = mdb.delete("bookmark", "_id = ?", new String[]{Integer.toString(selectedBookmarkId)});
【讨论】: