本文主要是介绍[Android] 手机菜单键响应逻辑 Menu Handler,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
【需求说明】
1. 按下安卓手机菜单键,可以弹出菜单选项
2. 点击菜单选项中的某一些,做出点击响应动作(以Toast显示点击动作即可)
【效果展示】
【设计代码】
1. 菜单响应重写 boolean onCreateOptionsMenu(Menu menu) 方法
@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// TODO Auto-generated method stubLog.d(TAG, "onCreateOptionsMenu triggered!");menu.add(0, Menu_About, 0, "关于");menu.add(0, Menu_Exit, 0, "退出");return super.onCreateOptionsMenu(menu);}
注意:增加菜单子项为menu.add 方法,详细的接口说明可以直接查看源码,这里需要在参数2和参数4设置菜单子项的Id和Title.
2. 菜单点击响应 重写 boolean onOptionsItemSelected(MenuItem item) 方法
@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// TODO Auto-generated method stubLog.d(TAG, String.format("item id = %d", item.getItemId()));switch (item.getItemId()) {case Menu_Exit:Toast toast = Toast.makeText(MainActivity.this, "Menu_Exit triggered!", Toast.LENGTH_SHORT);//toast.setGravity(Gravity.TOP , 0, 50);toast.show();break;case Menu_About:Toast toast2 = Toast.makeText(MainActivity.this, "Menu_About triggered!", Toast.LENGTH_SHORT);//toast2.setGravity(Gravity.TOP , 0, 50);toast2.show();break;default:break;}return super.onOptionsItemSelected(item);}
这里在收到子项点击的回调后,根据菜单ItemId来标识是哪一个子项产生的点击动作,从事进行相应处理。
这篇关于[Android] 手机菜单键响应逻辑 Menu Handler的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!