首页 > 代码库 > Android学习路线(七)设置Action Bar
Android学习路线(七)设置Action Bar
在action bar最今本的形式中,它仅仅在左边展示了activity的标题以及应用的icon。即使在这种简单的形式中,它也只是告诉用户现在在应用的哪个activity中,同时为你的应用保持一个标识。
设置一个基本的action bar需要你的应用使用支持action bar的主题。如何来请求这样的主题要看你所选择的你的应用最低支持的Android版本。因此本课会根据应用支持的不同的Android最低版本分为两个部分。
支持Android 3.0及以上版本
从Android 3.0 (API level 11)开始,所有的activity都使用的是Theme.Holo
主题 (或者它的子主题),包含了action bar,在你的targetSdkVersion
或者minSdkVersion
属性被设置为11或者更高时,Theme.Holo主题是应用默认主题。
所以要为你的activity添加action bar,只需要简单的这是上面其中一种属性为11或者更高。如下所示:
<manifest ... > <uses-sdk android:minSdkVersion="11" ... /> ... </manifest>
提示: 如果你创建了一个自定义的主题,要确保它是Theme.Holo
主题的子主题。更多信息,请查看Styling the Action Bar。
就这样,现在你的应用已经使用了Theme.Holo
主题,你的所有activity中都会显示action bar了。
支持Android 2.1及以上版本(低于Android 3.0)
要在运行在Android 3.0 (低至2.1) 版本的设备上的应用上添加action bar,需要在应用中导入Android Support Library 。
作为开始,阅读Support Library Setup 文档,同时添加v7 appcompat 库 (当你下载完support包后,根据Adding libraries with resources 说明文档来导入)。
一旦你的应用项目整合了Support Library :
- 让你的activity继承
ActionBarActivity
。例如:public class MainActivity extends ActionBarActivity { ... }
- 在你的manifest 文件中,在你的
<application>
元素或者独立的<activity>
元素中使用Theme.AppCompat
主题。例如:<activity android:theme="@style/Theme.AppCompat.Light" ... >
提示: 如果你创建了一个自定义主题,确保它是
Theme.AppCompat
主题的子主题,详情请阅读Styling the Action Bar。
现在你的运行在Android 2.1 (API level 7) 或更高版本的应用的activity中也包含了action bar了。
记住要争取额的设置你的应用支持的android API版本:
<manifest ... > <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="18" /> ... </manifest>