首先在onCreate函数中的末尾, 添加registerForContextMenu(getListView());语句,
意思是将屏幕中listView的每一项,都看做是菜单项,进行注册,
然后在继承onCreateContextMenu()方法.如下:
@Override //创建长按弹出式菜单,这是一个回调函数
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(0, DELETE_ID, 0, R.string.menu_delete); //添加两个菜单项
menu.add(0, INSERT_ID, 1, R.string.menu_insert);
}
最后再设置菜单项被选中后的动作
@Override
public boolean onContextItemSelected(MenuItem item) {
switch(item.getItemId()){
case DELETE_ID:
AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo(); //获取菜单信息
mDbHelper.deleteNote(info.id); //删除被选中的记事
fillData();
return true;
}
return super.onContextItemSelected(item);
}
菜单创建成功
Android下创建弹出式菜单
最新推荐文章于 2024-05-09 16:56:55 发布