注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好。
原文链接: http://developer.android.com/training/basics/actionbar/setting-up.html
配置Action Bar
Action Bar
最基本的形式,是用来为Activity展示标题,并在左侧显示应用的图标。即使是这样的简单的形式,
Action Bar
对于所有activity来说依然是非常有用的,因为它可以用来告知用户他们现在所处的位置,同时还能为你的应用保持着一个一致的标识。
图1. 一个具有应用图标和Activity标题的Action Bar
配置一个基本的 Action Bar 需要你的应用使用一个支持 Action Bar 的Activity主题。如何获取这样的一个主题取决于你的应用支持的最低Android版本。所以,这节课根据系统平台版本的不同被分成了两个部分。
一). 支持Android 3.0及以上
从Android 3.0(API Level 11)开始,所有使用
Theme.Holo
主题的Activity都会包含
Action Bar
(或者包含它的一种衍生产物),这一主题是当
targetSdkVersion
或者
minSdkVersion
属性字段被设置成11或更高时的默认主题。
所以为了将 Action Bar 添加至你的应用,只需简单地将这两个属性字段的任意一个设置为11或更高就行了,例如:
< manifest ... > < uses-sdk android:minSdkVersion ="11" ... /> ... </ manifest >
Note:
如果你创建了一个自定义主题,那么请确保它是以 Theme.Holo 为父类的主题。更多信息,可以阅读: Styling the Action Bar
现在你的App已经应用了 Theme.Holo 主题,并且所有相关的activity都显示了 Action Bar ,就是这样!
二). 支持Android 2.1及以上
要在Android 3.0以下(最低可以是Android 2.1)的设备上运行并且添加 Action Bar 需要你在你的应用中添加 Android Support Library 。
在开始之前,请先阅读: Support Library Setup 然后配置 v7 appcompat 库(一旦你下载好了这个库,按照 Adding libraries with resources 中的指引一步步做)。
当你将 Android Support Library 集成到你的项目工程以后:
-
更新你的activity,使它继承自
ActionBarActivity ,例如:
-
public class MainActivity extends ActionBarActivity { ... }
-
在你的清单文件,更新
<application> 标签或者一个
<activity> 标签,使用 Theme.AppCompat 中的某一个主题。例如:
-
< activity android:theme ="@style/Theme.AppCompat.Light" ... >
Note:
如果你创建了一个自定义主题,那么请确保它是以 Theme.AppCompat 为父类的主题。更多信息,可以阅读: Styling the Action Bar
现在当你的应用在Android 2.1(API Level 7)或更高版本的设备上运行时,就拥有过了 Action Bar
别忘了在清单文件中正确设置你的应用所支持的API Level:
< manifest ... > < uses-sdk android:minSdkVersion ="7" android:targetSdkVersion ="18" /> ... </ manifest >