创建带子菜单的选项菜单

来源:互联网 发布:淘宝司法拍卖网房产 编辑:程序博客网 时间:2024/04/29 16:02

1、res目录下创建一个menu目录,在该目录下创建optionmenu.xml菜单资源文件

<?xml version="1.0" encoding="UTF-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android">    <item android:id="@+id/item1" android:title="更换背景" android:alphabeticShortcut="9"/>    <item android:id="@+id/item2" android:title="参数设置" android:alphabeticShortcut="e">    <menu >        <group android:id="@+id/setting" android:checkableBehavior="all">            <item android:id="@+id/sound" android:title="使用背景"></item>            <item android:id="@+id/video" android:title="背景音乐"></item>        </group>    </menu>    </item>       <item android:id="@+id/item3" android:title="恢复默认" android:alphabeticShortcut="r"/></menu>

2、MainActivity,java

public class MainActivity extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);}//创建选项菜单@Overridepublic boolean onCreateOptionsMenu(Menu menu) {MenuInflater inflater=new MenuInflater(this);//实例化一个MenuInflater对象inflater.inflate(R.menu.optionmenu, menu);//解析菜单文件return true;}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {if(item.getGroupId()==R.id.setting){//判断是否选择了参数设置菜单组if(item.isChecked()){//当菜单项已经被选中item.setChecked(false);//设置菜单项不被选中}else{item.setChecked(true);//设置菜单项被选中}}if(item.getItemId()!=R.id.item2){//弹出消息提示框显示选择的菜单项的标题Toast.makeText(MainActivity.this, item.getTitle(), Toast.LENGTH_SHORT).show();}return true;}}


0 0