在Google官方Android设计指南中(链接:http://www.apkbus.com/design/get-started/ui-overview.html)有一个新特性就是自我标识,也就是宣传自己,所以非常多应用如今也自然的使用ActionBar并提供自己的logo.

微信的应用:

Google的Android设计指南中是这样说的:应用的 启动图标 作为启动应用的入口是展示 logo 的最佳场所。你也能够将启动图标放置在 操作栏 上,从而保证在应用内的全部页面上都能看到它。

在使用ActionBar的时候。会发现一个问题。

在3.0曾经SDK中是不支持ActionBar的,所以假设手机apk要兼容2.2或2.3的手机就须要用一个开源的项目ActionBarSherlock,详细用法例如以下:

1、下载开源包:http://actionbarsherlock.com/usage.html

2、导入到Eclipse中(和导入项目步骤同样,记得勾选Is Library)

3、在项目中引用(properties->android->add  加进去)

4、改动主题为@Style/Theme.Sherlock.Light(或其子类)

5、继承SherlockActivity。

6、使用getSupportActionBar()获取ActionBar对象。

上面方法就能够实现低版本号使用ActionBar的问题。可是Goole去年推出了自己的兼容包,使用起来更加方便。以下我们就来看看怎样使用support_v7。

1、和上面一样下载和导入appcompat_7.x兼容包(假设是官方最新的sdk开发工具则提供)

2、在项目中引用:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGF3YW5nYW5iYW4=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />

3、改动主题为@style/Theme.AppCompat(或其子类)

4、改动menu/文件夹下相应的xml文件

<?

xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:alpha="http://schemas.android.com/apk/res-auto">
<!-- Search, should appear as action button -->
<item android:id="@+id/action_search"
android:icon="@drawable/ic_action_refresh"
android:title="刷新"
alpha:showAsAction="always"/>
<!-- Settings, should always be in the overflow -->
<item android:id="@+id/action_add"
android:title="分享"
android:icon="@drawable/ic_action_share"
alpha:showAsAction="always" /> <item android:id="@+id/action_settings"
android:title="很多其它"
android:icon="@drawable/ic_action_overflow"
alpha:showAsAction="always">
<menu >
<group >
<item
android:id="@+id/item1"
android:title="个人中心"
android:icon="@drawable/ic_action_share"/>
<item
android:id="@+id/item2"
android:title="设置"
android:icon="@drawable/ic_action_share"/>
<item
android:id="@+id/exit_system"
android:title="退出"
android:icon="@drawable/ic_action_share"/>
</group>
</menu>
</item>
</menu>

5、继承自ActionBarActivity

6、使用getSupportActionBar获取ActionBar对象。

		ActionBar actionBar = getSupportActionBar();
actionBar.setDisplayShowHomeEnabled(true);
actionBar.setIcon(R.drawable.actionbar_icon);

在Android 2.2和2.3手机上完美执行...

Android菜鸟的成长笔记(28)——Google官方对Andoird 2.x提供的ActionBar支持的更多相关文章

  1. Android菜鸟的成长笔记(5)——Android系统源代码你下载了吗?

    原文:Android菜鸟的成长笔记(5)--Android系统源代码你下载了吗? 在上一篇中我们用Android系统源代码分析了我们前面写的代码,有的朋友可能就会问怎么才能下载到Google官方的源代 ...

  2. Android菜鸟的成长笔记(4)——你真的理解了吗?

    原文:Android菜鸟的成长笔记(4)--你真的理解了吗? 在上一篇中我们查看了QQ的apk源文件中的布局结构,并仿照QQ完成了我们第一个应用的界面,详细请看<Android菜鸟的成长笔记&g ...

  3. Android菜鸟的成长笔记(1)——Android开发环境搭建从入门到精通

    原文:Android菜鸟的成长笔记(1)--Android开发环境搭建从入门到精通 今天在博客中看到好多Android的初学者对Android的开发环境的搭建不熟悉而导致不能进行学习,所以我决定自己写 ...

  4. Android菜鸟的成长笔记(14)—— Android中的状态保存探究(上)

    原文:[置顶] Android菜鸟的成长笔记(14)—— Android中的状态保存探究(上) 我们在用手机的时候可能会发现,即使应用被放到后台再返回到前台数据依然保留(比如说我们正在玩游戏,突然电话 ...

  5. Android菜鸟的成长笔记(3)——给QQ登录界面说So Easy

    原文:Android菜鸟的成长笔记(3)--给QQ登录界面说So Easy 上一篇:Android菜鸟的成长笔记(2)--第一个Android应用 我们前面已经做了第一个Android应用程序,虽然有 ...

  6. Android菜鸟的成长笔记(2)——第一个Android应用

    原文:Android菜鸟的成长笔记(2)--第一个Android应用 上一篇:Android菜鸟的成长笔记(1)--Anddroid环境搭建从入门到精通 在上一篇Android菜鸟的成长笔记(1)中我 ...

  7. Android菜鸟的成长笔记(13)——异步任务(Async Task)

    原文:[置顶] Android菜鸟的成长笔记(13)——异步任务(Async Task) Android的UI线程主要负责处理用户的事件及图形显示,因此主线程UI不能阻塞,否则会弹出一个ANR(App ...

  8. Android菜鸟的成长笔记(12)——Handler、Loop、MessageQueue

    原文:[置顶] Android菜鸟的成长笔记(12)——Handler.Loop.MessageQueue 当一个程序第一次启动时,Android会启动一条主线程(Main Thread),主线程主要 ...

  9. Android菜鸟的成长笔记(11)——Android中的事件处理

    原文:[置顶] Android菜鸟的成长笔记(11)——Android中的事件处理 Android提供了两种方式来处理事件,一个是基于回调的事件处理,另一个是基于监听的事件处理,举个例子: 基于回调的 ...

随机推荐

  1. [RxJS] Observables can complete

    The Observer object has the functions next() and error(). In this lesson we will see the other (and ...

  2. 如何在虚拟机中安装Win7系统

    在虚拟机里安装系统,可以很方便我们对系统的各项功能进行测试,而又不会影响本机系统,本节就介绍如何在虚拟机中安装Win7系统 . 工具/原料 vm9虚拟机 电脑一台 方法/步骤 1 在百度上搜索win7 ...

  3. 【转载】Python编程中常用的12种基础知识总结

    Python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序.去重,字典排序,字典.列表.字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出,进 ...

  4. Eclipse Removing obsolete files from server 问题

    今天在修改server.xml调试程序时,遇到下面这个问题,clean,重启都不好使.                 Removing obsolete files from server..    ...

  5. Facebook登录 AndroidStudio

    简介 主页:https://www.facebook.com/ Android开发者支持:https://developers.facebook.com/docs/android/  应用管理:htt ...

  6. 用ueditor上传图片、文件等到七牛云存储

    ueditor上传文件,是用数据流的形式上传的. 而七牛云存储官方文档中,只提供了文件路径上传的方式. 但是,仅仅是在官方文档中写了这一种方式. 事实上,利用VS的对象管理器,打开Qiniu的dll, ...

  7. ASP.NET常用编程代码(二)

    1.绑定在DataList中的DropDownList private void dlistOrder_EditCommand(object source, System.Web.UI.WebCont ...

  8. 万事开头难,用HTML写的第一个界面,收获颇多

        很开心跟了叶老师学习和做项目,基础不好,前期他会帮你安排好学习路线和计划.前期没有项目做,叶老师先让我先学习jQuery,给我推荐了一些网站,叫我一边学习,一边写博客.其实很早就有想写博客的想 ...

  9. hihoCoder挑战赛14 A,B,C题解

    转载请注明出处: http://www.cnblogs.com/fraud/          ——by fraud 题目1 : 不等式 时间限制:10000ms 单点时限:1000ms 内存限制:2 ...

  10. Ping命令详解

    引言:我们每天都在使用Ping命令,但是我们可能不太清楚Ping的工作原理,对运行结果中的很多细节也不是很清楚.查找了一下资料,现在和大家分享一下Ping的运行原理和相关细节. A.Ping命令的工作 ...