用Android MenuInflater创建菜单项的方法步骤

时间:2021-05-19

之前在一篇文章中已经讲过了菜单项的创建方法,但是那种方法效率较低,维护不易,现在实现另一种方法创建菜单。

MenuInflater,通过此类我们可以轻松的创建菜单项,具体步骤如下:

1、在res/menu/文件夹下,找到main.xml文件,此文件就是我们定义菜单项的地方,在些文件中添加如下菜单项:
复制代码 代码如下:
<item
  android:id="@+id/menu1"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu1"/>
<item
  android:id="@+id/menu2"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu2"/>
<item
  android:id="@+id/menu3"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu3"/>
<item
  android:id="@+id/menu4"
  android:icon="@android:drawable/alert_dark_frame"
  android:title="Menu4"/>

2、在Activity中,覆写如下方法并添加一个显示系统设置界面的方法
复制代码 代码如下:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu1:// 在些定义第一个菜单项的响应事件
break;
case R.id.menu2:
break;
case R.id.menu3:
break;
case R.id.menu4:
showSettings();
break;
}
return super.onOptionsItemSelected(item);
}
private void showSettings() {
final Intent settingsIntent = new Intent(android.provider.Settings.ACTION_SETTINGS);
settingsIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
startActivity(settingsIntent);
}

3、运行程序,点击Menu,将出现如下效果

点击Menu4,将弹出系统设置页面!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章