Android 在上下文菜单中从数据库获取id
嗨,我被这个问题深深打动了。我是android世界的新手。我有一个列表,可以显示database.id、name和description中的信息。单击并按住操作时,我想从数据库中删除所选行。我已经实现了上下文菜单,但没有从数据库获取id,但返回位置0,但db的id是1.x 我想我明白了:Android 在上下文菜单中从数据库获取id,android,android-layout,Android,Android Layout,嗨,我被这个问题深深打动了。我是android世界的新手。我有一个列表,可以显示database.id、name和description中的信息。单击并按住操作时,我想从数据库中删除所选行。我已经实现了上下文菜单,但没有从数据库获取id,但返回位置0,但db的id是1.x 我想我明白了: public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo menuInfo) { super.onCrea
public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, view, menuInfo);
TextView ids = (TextView)findViewById(R.layout.list_row);
AdapterContextMenuInfo info = (AdapterContextMenuInfo) menuInfo;
int position = info.position;
int foldeiId=(Integer) adapter.getItem(position);
String fd = String.valueOf(view.getId());
// Log.w("Data id arunmr: ", foldeiId);
System.out.println(foldeiId);
menu.setHeaderTitle("Options");
menu.add(0, NEW_MENU_ITEM, foldeiId, "Delete");
menu.add(0, SAVE_MENU_ITEM, foldeiId, "Rename");
}
但是你知道如何从上下文菜单中访问上面提到的Foldeid吗 试试这个
如果在oncreate方法之外声明该变量,则可以获取foldeid
@Override
public boolean onContextItemSelected(MenuItem item) {
if(item.getTitle()=="Delete"){
// delete the item you want to delete
}
else if(item.getTitle()=="Rename"){
// rename the item you want to
}
else {return false;}
return true;
}
您在列表上显示的数据是什么?id、项目名称和项目描述。我想获取ID您如何在listview中显示它?你能发布你如何添加和显示iti的示例代码吗?我想我得到了解决方案:见编辑的问题否这不是解决方案,我一直认为,因为当你从数据库中删除某个特定项目时,该特定id会被删除,这意味着你将不会在数据库中拥有该项目