在Android系统的早期版本中,Android手机都配备有物理菜单按钮,这使得开发人员需要处理该按钮相关的事件。但是自从Android 3.0版本推出ActionBar以后,物理菜单按钮逐渐消失。但在某些特殊情况下,仍需要处理物理菜单按钮事件。下面是处理物理菜单按钮事件的代码示例:
在Activity的onCreate()方法中调用以下方法来启用ActionBar:
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
// 启用ActionBar
requestWindowFeature(Window.FEATURE_ACTION_BAR);
setContentView(R.layout.activity_main);
ActionBar actionBar = getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
}
实现onCreateOptionsMenu方法,用于创建菜单
@Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main_activity_actions, menu); return super.onCreateOptionsMenu(menu); }
实现onOptionsItemSelected方法,用于处理菜单项被点击的事件
@Override public boolean onOptionsItemSelected(MenuItem item) { // 处理物理菜单按钮被点击的事件 if (item.getItemId() == android.R.id.home) { // 点击ActionBar上的物理菜单按钮时会回调该方法 Log.d(TAG, "菜单按钮被点击了"); return true; }
return super.onOptionsItemSelected(item);
}
以上就是处理Android物理菜单按钮事件的代码示例。
上一篇:Android无IPC绑定服务
下一篇:android物理键盘事件解析