android创建菜单

android手机上一般提供一个“菜单”按钮,当按下菜单按钮时会出现一个菜单,这是怎么实现的呢 , android的Activity提供一个 onCreateOptionsMenu()方法供我们重写,当按钮按下时,这个方法被调用,我们可以在其中动态添加菜单选项,目前可以选择两种方式添加,xml配置方式、硬编码方法。
1. xml配置方式: 在res添加menu目录,然后再旗下添加一个menu.xml文件,其内容如下:
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="新建" android:id="@+id/newItem"></item>
<item android:id="@+id/deleteItem" android:title="删除"></item>
<item android:id="@+id/editItem" android:title="编辑"></item>
</menu>

然后再Activity中重写onCreateOptionsMenu方法,如下:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// TODO Auto-generated method stub
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);

return super.onCreateOptionsMenu(menu);

}

MenuInflater 用于加载menu配置文件。
或者使用硬编码方式:

menu.add(Menu.NONE, R.id.newItem, Menu.NONE, "新建");
menu.add(Menu.NONE, R.id.deleteItem, Menu.NONE, "删除");
menu.add(Menu.NONE, R.id.editItem, Menu.NONE, "编辑");

add方法参数:
groupId :组标识符,用于将menuItem分组。不需要分组时可以使用Menu.NONE赋值。
itemId : 菜单项标识符,
order :菜单项顺序值
title :菜单项显示的字符串

菜单弹出来后,可以重写onMenuItemSelected方法对单击事件进行响应。如下:

@Override
public boolean onMenuItemSelected(int featureId, MenuItem item) {
// TODO Auto-generated method stub
switch (item.getItemId()) {
case R.id.newItem:
this.setTitle("新建菜单被单击");
break;
case R.id.deleteItem:
this.setTitle("删除菜单被单击");
break;
case R.id.editItem:
this.setTitle("编辑菜单被单击");
break;
default:
break;
}
return super.onMenuItemSelected(featureId, item);
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值