
简单组件长按d出上下文菜单总结
第一步:在程序合适位置给一个控件注册上下文菜单
组件可以是按钮,文本框,还可以是列表条目,下以listView列表为例
ListView contentList=(ListView) findViewById(R.id.blackname_manager_listV)
contentList.setAdapter(mListAdapter)
registerForContextMenu(contentList)
第二步:在activity中复写onCreateContextMenu方法,并添加菜单项目。public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo)
menu.add(0, MENU_UPDATE, 0, "修改信息")
menu.add(0, MENU_ADD, 0, "删除记录")
}
第三步:在activity中复写onContextItemSelected方法,处理菜单条目事件public boolean onContextItemSelected(MenuItem item) {//获取上下文菜单适配器AdapterContextMenuInfo cmi(AdapterContextMenuInfo)item.getMenuInfo()
//获取被选择的菜单位置int posMenu=cmi.position//将菜单项与列表视图的条目相关联items(BlackNumber)mListAdapter.getItem(posMenu)switch(item.getItemId()){case MENU_UPDATE://执行该菜单条目的业务逻辑breakcase MENU_ADD://执行该菜单条目的业务逻辑
在res下新建menu文件夹,然后新建菜单文件定义一个xml文件(在menu资源里面),
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/menu_settings"
android:showAsAction="never"
android:title="设置" />
<item
android:id="@+id/menu_exit"
android:showAsAction="never"
android:title="退出" />
</menu>
(item有多少个,显示就多少个)
在代码里面的onCreateOptionsMenu方法里面把这个xml布局填充进去,代码如下:
MenuInflater inflater = getMenuInflater()
inflater.inflate(R.menu.menu_settings, menu)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)