WEB开发网
开发学院WEB开发Xml 使用xml布局菜单 阅读

使用xml布局菜单

 2012-06-03 15:49:15 来源:WEB开发网   
核心提示::title值可以引用values中的string资源,(二)使用MenuInflater添加菜单项MenuInflate在android中建立了从资源文件到对象的桥梁,使用xml布局菜单(2),MenuInflater即把菜单xml资源转换为对象并添加到menu对象中,它可以通过activity的getMenuInf
:title值可以引用values中的string资源。

(二)使用MenuInflater添加菜单项

MenuInflate在android中建立了从资源文件到对象的桥梁,MenuInflater即把菜单xml资源转换为对象并添加到menu对象中,它可以通过activity的getMenuInflater()得到。我们在MainActivity中重写onCreateOptionsMenu(...)方法。


@Override
publicboolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.mainmenu, menu);
returntrue;
}
(三)响应菜单
最后重写onOptionsItemSeleted(...)方法。


@Override
publicboolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()) {
case R.id.mi1:
// do sth
break;
case R.id.mi2:
// do sth
break;
case R.id.mi3:
// do sth
break;
case R.id.mi4:
// do sth
break;
}
returntrue;
}
这一步最大的体现了使用XML生成菜单的好处。android不仅为我们定义的xml文件生成了资源ID,同样可以为group,menu item来自动生成ID(就像为布局中定义的view生成id那样)。

至此,我们完成了一个简单的“使用XML生成菜单”的demo,并从中体会到了使用资源文件的好处,因此这是android中创建菜单的推荐方式。实际上,我们在代码中对菜单项或分组的操作都能在xml文件中完成,下面就简单介绍一些比较常用的功能。

(五)更多菜单资源的功能
1.资源文件实现子菜单

子菜单通过在item元素中嵌套menu来实现。


<item android:title="系统设置">
<menu>
<item android:id="@+id/mi_display_setting"
android:title="显示设置"/>
<item android:id="@+id/mi_network_setting"
android:title="网络设置"/>
<!-- 别的菜单项 -->
</menu>
</item>
2.为菜单项添加图标

<item android:id="@+id/mi_exit"
android:title="退出"
android:icon="@drawable/exit"/>
3.设置菜单项的可选出现

Tags:使用 xml 布局

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接