标签:
网络上查阅,ListView长按菜单有两种方式可以实现
第一种方式,需要三步
一、先定义ListView的长按菜单
ListView listView = (ListView) findViewById(R.id.main_listview);
registerForContextMenu(listView);
二、为菜单添加详细的项目标题图标。
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) { // TODO Auto-generated method stub super.onCreateContextMenu(menu, v, menuInfo); menu.setHeaderTitle("菜单"); menu.add(0, 1, 0, "详细"); menu.add(0, 2, 0, "修改"); menu.add(0, 3, 0, "删除"); }
三、定义点击菜单里每个项目的 动作
public boolean onContextItemSelected(MenuItem menu) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) menu.getMenuInfo(); switch (menu.getItemId()) { case 1: //点击 长按菜单的 详细 break; case 2: //点击 长按菜单的 修改 break; case 3: //点击 长按菜单的 删除 break; } return super.onContextItemSelected(menu); }
第二种方式:
一,直接定义ListView的长按事件
detailed_listview.setOnCreateContextMenuListener(new OnCreateContextMenuListener() //ListView的长按菜单 { public void onCreateContextMenu(ContextMenu menu, View view, ContextMenuInfo info) { menu.setHeaderTitle("菜单"); menu.add(0, 1, 0, "修改"); menu.add(0, 2, 0, "删除"); } });
二、菜单上每个项目的点击事件
public boolean onContextItemSelected(MenuItem item) { AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo(); switch (item.getItemId()) { case 1: //修改数据 break; case 2: //删除数据 break; } return super.onContextItemSelected(item); }
标签:
原文地址:http://www.cnblogs.com/qq28902581/p/4600686.html