android的选项菜单详解手机开发

一:首先要在res/menu下创建menu资源类型的xml文档

<?xml version="1.0" encoding="utf-8"?>

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item  
        android:id="@+id/menu_item_new_crime" 
        android:icon="@android:drawable/ic_menu_add" 
        android:title="@string/new_crime" 
        android:showAsAction="ifRoom|withText" 
        ></item>" 
 
</menu>

showAsAction用于指定菜单选项显示在操作栏

二:创建选项菜单和响应

Activity和Fragment都有一套选项菜单回调函数

onCreateOptionsMenu(Menu menu, MenuInflater inflater)

onOptionsItemSelected(MenuItem item)

创建选项菜单:

@Override 
	public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { 
		// TODO Auto-generated method stub 
		super.onCreateOptionsMenu(menu, inflater); 
		inflater.inflate(R.menu.fragment_crime_list, menu); 
	}

inflater调用inflate()填充Menu的布局

如果使用fragment,fragment的onCreateOptionsMenu(Menu menu, MenuInflater inflater)是由FragmentManager调用的,当activity接受到来自操作系统的onCreateOptionsMenu(Menu menu, MenuInflater inflater)方法回调请求时,我们要告诉fragmentManager,你管理的fragment要接受onCreateOptionsMenu(Menu menu, MenuInflater inflater)的调用指令,所以要在当前fragment的onCreate中添加

setHasOptionsMenu(true);


响应选项菜单:

调用onOptionsItemSelected(MenuItem item),并在方法内编写响应逻辑


接下来实现层级式导航回到上一次的界面:

请看上一篇博客 http://blog.csdn.net/jeffleo/article/details/50823317


原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/3177.html

(0)
上一篇 2021年7月16日 14:05
下一篇 2021年7月16日 14:05

相关推荐

发表回复

登录后才能评论