Context menu默认要long click才会触发。 以下方法使单击也能触发
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo)
{//添加菜单项
menu.add(Menu.NONE, ITEM_MENU_PREVIEW, 0,"查看");
menu.add(Menu.NONE, ITEM_MENU_SAVE2ALBUM, 0,"保存到相册");
menu.add(Menu.NONE, ITEM_MENU_DELETE, 0,"删除");
menu.add(Menu.NONE, ITEM_MENU_CANCEL, 0,"取消");
}
//选中菜单Item后触发
public boolean onContextItemSelected(MenuItem item){
//关键代码在这里
AdapterView.AdapterContextMenuInfo menuInfo;
menuInfo =(AdapterView.AdapterContextMenuInfo)item.getMenuInfo();
int indexListView = menuInfo.position; //这个为选中的ListView中的条目ID
switch(item.getItemId())
{
case ITEM_MENU_PREVIEW:
break;
case ITEM_MENU_SAVE2ALBUM:
break;
case ITEM_MENU_DELETE:
break;
case ITEM_MENU_CANCEL:
break;
}
return true;
//return super.onContextItemSelected(item);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
view.showContextMenu();
}