Android ListView位置

时间:2016-06-08 13:49:23

标签: android listview contextmenu

我正在开发一个网络浏览器,我刚刚添加了书签。我想在列表视图中添加一个上下文菜单来打开和删除书签。我已经有了代码,但是当我点击上下文菜单时,它会打开/删除顶部项目。我真的很努力让它恰到好处。

非常感谢任何帮助。

由于 千斤顶

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作来获取所选书签的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中删除所选项目:

long ret = mdb.delete("bookmark", "_id = ?", new String[]{Integer.toString(selectedBookmarkId)});