Android各版本间API的差异 - ActionBar
16lz
2021-01-26
概述
ActionBar是在Android 3.0 (API LEVEL 11) 中添加进来的, 向下版本到2.1, 则需要使用support-v7. 而2.1以下版本则需要自行实现了.
差异
Android 3.0+请参考官方文档.Android 2.1+使用时则需要注意以下几点:
-
引用support-v7
-
Activity 必须继承android.support.v7.app.ActionBarActivity
-
定义菜单: menu.xml中, 需要使用自定义xml-namespace, 并在设置部分Item属性时使用该namespace, 如showAsAction 属性
-
设置样式: themes.xml中, 设置style的item的name属性时, 不需要android:前缀
除了上述差异外, 在定义Up Navigation特性时, 也需要注意, 若调用了如下代码,:
getActionBar().setDisplayHomeAsUpEnabled(true);/* or * getSupportActionBar().setDisplayHomeAsUpEnabled(true); */
则需要在AndroidManifest.xml中设置Activity的属性, 如下:
<activityandroid:name="com.example.app.ChildActivity"android:label="@string/title_child_activity"android:parentActivityName="com.example.app.MainActivity"><!--Parentactivitymeta-datatosupportAPIlevel4+--><meta-dataandroid:name="android.support.PARENT_ACTIVITY"android:value="com.example.app.MainActivity"/></activity>
需要注意的是,API Level 16 在AndroidManifest.xml中, 新增了Activity的新属性android:parentActivityName, 来替代向下版本的meta-data.
参考资料
http://developer.android.com/training/basics/actionbar/index.html
更多相关文章
- XUI 一个简洁而优雅的Android原生UI框架,解放你的双手!
- 【android之锚定视图】
- Android(安卓)Design Support 介绍
- 错误总结1,动态加载部分不能显示的原因
- Android实现文字垂直滚动、纵向走马灯效果的实现方式汇总
- Android模拟器运行速度很慢的解决办法
- Android中ListView滚动时上下的那一抹色彩
- cocos2dx 遮罩层 android 手机上 失败
- Android_之动画1