前言
将“设置”或“添加”按钮放在ActionBar,可以让你的app看起来更加清晰,更加方便用户使用。记录一下如何在ActionBar添加menu按钮。
在res->menu文件夹中创建menu_main.xml android:orderInCategory
设置按钮的排序顺序;app:showAsAction
设置显示方式,ifRoom
设置为当ActionBar有位置时显示,当没有位置时收起;
<menu xmlns:android ="http://schemas.android.com/apk/res/android"
xmlns:app ="http://schemas.android.com/apk/res-auto"
xmlns:tools ="http://schemas.android.com/tools"
tools:context ="com.youli.feiyu.fynotification.MainActivity" >
<item
android:id ="@+id/action_settings"
android:orderInCategory ="0"
android:icon ="@drawable/iconfont_setting"
android:title ="@string/action_settings"
app:showAsAction ="ifRoom" />
<item
android:id ="@+id/action_add"
android:orderInCategory ="1"
android:icon ="@drawable/iconfont_add"
android:title ="@string/action_add"
app:showAsAction ="ifRoom" />
</menu >
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
为ActionBar添加按钮
在Activity中,重写onCreateOptionsMenu
; 将menu_main.xml添加进来;
@Override
public boolean onCreateOptionsMenu (Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true ;
}
为按钮添加点击事件
在Activity中,重写onOptionsItemSelected
;
@Override
public boolean onOptionsItemSelected(MenuItem item ) {
if (id == R.id .action_settings) {
return true ;
}
if (id == R.id .action_add) {
return true ;
}
return super.onOptionsItemSelected(item );
}
总结
ActionBar的menu按钮,事先定义好xml; 在Activity中重写onCreateOptionsMenu
,将菜单按钮添加进来;
在Activity中重写onOptionsItemSelected
,监听按钮的点击事件;
转自:http://blog.youkuaiyun.com/SeanHuang1661/article/details/50791889