Android 即使没有listitem,上下文菜单也会显示
我在列表中添加了上下文菜单。但即使没有列表项,列表也会显示上下文菜单。 这是我的密码Android 即使没有listitem,上下文菜单也会显示,android,listview,contextmenu,Android,Listview,Contextmenu,我在列表中添加了上下文菜单。但即使没有列表项,列表也会显示上下文菜单。 这是我的密码 @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { // TODO Auto-generated method stub super.onCreateContextMenu(menu, v, menuInfo); if (v.getI
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
// TODO Auto-generated method stub
super.onCreateContextMenu(menu, v, menuInfo);
if (v.getId()==R.id.list) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
menu.add(getString(R.string.Delete));
}
}
/* (non-Javadoc)
* @see android.app.Activity#onContextItemSelected(android.view.MenuItem)
*/
@Override
public boolean onContextItemSelected(MenuItem item) {
// TODO Auto-generated method stub
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)item.getMenuInfo();
int menuItemIndex = item.getItemId();
showDeleteDialog(getString(R.string.deletemsg));
return super.onContextItemSelected(item);
}
如何解决此问题?在创建菜单之前,在onCreate中添加检查 假设列表项适配器对象称为listItemsAdapter
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menuInfo;
if(info != null)
{
if (v.getId()==R.id.list) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo)menuInfo;
menu.add(getString(R.string.Delete));
}
}
当你点击一个空单元格或一个有值的单元格时。如果它只是一个空单元格,那么我已经相应地修改了代码 我得到的信息为空。