一、
显示
隐藏Actionbar
通过 getActionBar().show() 与 hide()指定 Theme.Holo.NoActionBar主题指定样式 <item name="android:windowActionBar">false</item>
二、自定义操作ActionBar
1、隐藏/显示返回按钮
setDisplayHomeAsUpEnabled
事件的处理是Activity的onOptionsItemSelected进行处理的,其中会传入的Menu对象设置为android.R.id.home2、隐藏/显示标题setDisplayShowTitleEnabled3、隐藏/显示logo图标setDisplayUseLogoEnabled4、设置标题文字setTitle5、设置副标题setSubtitle
6、如果设置ActionBar为浮动的【与Activity重叠】,则requestWindowFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
7、拆分操作栏模式,在窄屏设备上,启动 拆分操作栏模式可以让系统将操作栏分成多个独立部分,在Activity配置上加上android:uiOptions="splitActionBarWhenNarrow"
三、使用导航Tab键
1、使用方法actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS)
然后通过actionbar.newTab得到每一个Tab导航项对象进行配置,需要注意的是,其中setTabListener接收一个TabListener监听事件,该事件允许创建Fragment事务响应Tab键的选中、未选中等操作
四、使用下拉列表导航
2、使用方法actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);然,setListNavigationCallbacks(adapter, callback) ,参数 callback列表项选中监听事件
五、使用自定义导航
调用actionbar.setCustomView来增加
六、菜单操作
1、子菜单,不能用于操作,也不支持嵌套的子菜单,这样尝试会造成异常2、想要增加一个菜单,需要重写Activity的OnCreateOptionsMenu,通过参数menu的add来操作
3、 关于android:showAsActionever:永远不会显示。只会在溢出列表中显示。ifRoom:会显示在Item中,但是如果已经有4个或者4个以上的Item时会隐藏在溢出列表中。always:无论是否溢出,总会显示。withText:Title会显示。collapseActionView:可拓展的Item。4、复选框菜单的 复选框可以出现在溢出菜单与展开菜单中,也可以出现在子菜单,要把一个菜单项设置为复选框,可以使用setCheckable方法,复选框的选中状态是通过setChecked来设置menu.add(0, 1, Menu.NONE, "chebox").setCheckable(true).5、单选框要设置一组单选框,要为每一项分配相同的组标识【GroupId】,然后调用Meun.setGroupCheckable,将组标识传给它menu.add(1, 11, Menu.NONE, "radio 1").setChecked(true); menu.add(1, 12, Menu.NONE, "radio 2").setChecked(true); menu.add(1, 13, Menu.NONE, "radio 3").setChecked(true); menu.add(1, 14, Menu.NONE, "radio 4").setChecked(true); menu.setGroupCheckable(1, true, true);
七、动态更新菜单
通过重写Activity的onPrepareOptionsMenu方法,可以在每次显示菜单之前根据应用程序的当前状态对菜单进行修改,值得注意的是,每次菜单项被点击,显示溢出菜单,创建操作栏的时候,都会触发onPrepareOptionsMenu方法
要动态修改菜单项,也可以在onCreateOptionsMenu方法引用Menu对象
八、上下文菜单