【Android Developers Training】 6. 配置Action Bar
注:本文翻译自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>
【Android Developers Training】 6. 配置Action Bar的更多相关文章
- 【Android Developers Training】 5. 序言:添加Action Bar
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 9. 覆盖于布局之上的Action Bar
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 8. 定义Action Bar风格
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 7. 添加Action Buttons
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 34. 添加一个简单的分享行为(Action)
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 15. 启动一个Activity
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 52. 打印照片
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 20. 创建一个Fragment
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- 【Android Developers Training】 4. 启动另一个Activity
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
随机推荐
- 【原创】JQWidgets-TreeGrid 1、快速入门
首先附上官方TreeGrid的传送门: http://www.jqwidgets.com/jquery-widgets-documentation/documentation/jqxtreegrid/ ...
- freemarker---详细使用教程
FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1,文本:直接输出的部分2,注释:<#-- ... -->格式部分,不会输出 ...
- IE haslayout
我们都知道浏览器有bug,而IE的bug似乎比大多数浏览器都多.IE的表现与其他浏览器不同的原因之一就是,显示引擎使用一个称为布局(layout)的内部概念. 因为布局是专门针对显示引擎内部工作方 ...
- Ubuntu16.04 安装flash player
sudo apt-get install browser-plugin-freshplayer-pepperflash
- 谷歌发布基于机器学习的Android APP安全检测系统:Google Play Protect
Google Play作为众所周知的在线应用市场,因为审查制度的松散,经常会有一些恶意软件伪装成其他应用混入其中.此前阿里聚安全小编就报道了2例关于恶意软件伪装在Google Play上的事件:< ...
- Telegram学习解析系列(三) : Build Telegram报错分析总结
正好通过这次 Telegram 的运行,很想把常见的项目运行的错误好好的总结一下,在前面的博客中,又星星散散的总结过错误和一些警告的消除方法,这次把错误处理一下,还有Telegram项目中有999+的 ...
- 第 5 章 MySQL 备份与恢复
第 5 章 MySQL 备份与恢复 前言 数据库的备份与恢复一直都是 DBA 工作中最为重要的部分之一,也是基本工作之一.任何正式环境的数据库都必须有完整的备份计划和恢复测试,本章内容将主要介绍 My ...
- SpringMVC 3.2集成Spring Security 3.2
参考:http://www.cnblogs.com/Beyond-bit/p/springmvc_and_springsecurity.html SpringMVC 3.2集成Spring Secur ...
- JMeter命令行方式运行时动态设置线程数及其他属性(动态传参)
在使用JMeter进行性能测试时,以下情况经常出现: 1.测试过程中,指定运行的线程数.指定运行循环次数不断改变: 2.访问的目标地址发生改变,端口发生改变,需要改写脚本. 上面的问题在GUI中,直接 ...
- 可视化Git版本管理工具SourceTree的使用
最近去了新公司,发现公司使用的团队版本管理工具是SourceTree,本人一直是SVN的热衷粉,很少使用git,所以从头学习git及可视化客户端SourceTree的使用,本贴只针对新手,大牛可以无视 ...