注:本文翻译自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集成到你的项目工程以后:

  1. public class MainActivity extends ActionBarActivity { ... }
  1. <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的更多相关文章

  1. 【Android Developers Training】 5. 序言:添加Action Bar

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  2. 【Android Developers Training】 9. 覆盖于布局之上的Action Bar

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  3. 【Android Developers Training】 8. 定义Action Bar风格

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  4. 【Android Developers Training】 7. 添加Action Buttons

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  5. 【Android Developers Training】 34. 添加一个简单的分享行为(Action)

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  6. 【Android Developers Training】 15. 启动一个Activity

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  7. 【Android Developers Training】 52. 打印照片

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  8. 【Android Developers Training】 20. 创建一个Fragment

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  9. 【Android Developers Training】 4. 启动另一个Activity

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

随机推荐

  1. 转:简单的Mysql主从复制设置

    步骤如下: 1.主从服务器分别作以下操作:  1.1.版本一致  1.2.初始化表,并在后台启动mysql  1.3.修改root的密码 2.修改主服务器master: #vim /etc/my.cn ...

  2. dotNet Linux 学习记录 - Jexus寄宿WCF服务

    让WCF运行在Linux上(寄宿于服务器程序) WCF介绍请自行 bing 搜索 使用的开发工具为vs2017,系统为 Ubuntu16.04 服务器软件为Jexus ( 详情请看:  Jexus官网 ...

  3. Kafka学习-Producer和Customer

    在上一篇kafka入门的基础之上,本篇主要介绍Kafka的生产者和消费者. Kafka 生产者 kafka Producer发布消息记录到Kakfa集群.生产者是线程安全的,可以在多个线程之间共享生产 ...

  4. Spring Boot 整合 Elasticsearch,实现 function score query 权重分查询

    摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 预见未来最好的方式就是亲手创造未来 – <史蒂夫·乔布斯传> 』 运行环境: ...

  5. 【JAVAWEB学习笔记】17_jsp

    动态页面技术(JSP/EL/JSTL) 学习目标 案例:完成商品的列表的展示 一.JSP技术 1.jsp脚本和注释 jsp脚本: 1)<%java代码%> ----- 内部的java代码翻 ...

  6. 【WPF MaterialDesign 示例开源项目】 Work Time Manager

    转岗写了将近一年的 PHP 最近因为 工作太多太杂, 在汇报工作的时候经常会忘记自己做了些什么,本来想只是使用excel来记录,但是发现了excel的很多局限性,光是无法共享就郁闷死了,习惯了下班不带 ...

  7. MyBatis双数据源配置

    配置相关 jdbc 配置 #============================================================================ # MySQL # ...

  8. 走进JavaScript——重拾对象

    创建对象 Object构造器的参数如果为空或null.undefined将返回一个空的Object对象,如果为其他值则调用相应的构造器,如 new Object() // Object {} new ...

  9. 移动端网页meta设置和响应式

    苏宁易购WAP的meta分析 响应式 meta设置 媒体查询时读的width为viewport的宽度.viewport宽度为手机分辨率.比如note2 1280*720.需要重置为设备 640*360 ...

  10. C# Ajax 返回json数据--前后台交互

    本人实习生一枚,遇到这个问题,网上找的试了试基本可以,自己搞了一下.可以供新手参考,大神如有指点,请不吝赐教. 版权声明:本文为博主原创文章,未经博主允许不得转载. 前台JavaScript代码: & ...