ActionBarSherlock,是一个开源的Actionbar项目(http://actionbarsherlock.com/download.html)。为什么我们要用它呢?谷歌已经不强制要求厂商支持menu键了,目前我使用的三星T705C已经做出改变了,menu键已经改成其它功能了,那么如何才能在程序中做到有菜单呢?actionbar就是谷歌解决这个问题的方式,不过这个actionbar是谷歌在3.0才推出的功能,对于先前版本谷歌就不管了!现在还有很多设备运行低于3.0的安卓,如果想开发适合所有版本安卓的程序,那么必须解决这个actionbar问题,ActionBarSherlock可以在低于3.0的版本安卓上提供actionbar,可以不夸张地说,只要你想做的安卓程序,并且想适合所有版本安卓,那么你肯定要使用ActionBarSherlock!!!

昨天我知道ActionBarSherlock的重要性后,就尝试使用它,结果在网上找了很多文章,最后发现,没有一篇能够完整正确解决使用它,最终自己解决了,但是也谢谢那些写博文的朋友,分享就是一种美德!!为了大家更方便使用它,我把我的解决过程完整讲解下来,希望对大家有帮助!!!

在使用ActionBarSherlock的时候,遇到一个问题,就是lib目录中的“android-support-v4.jar”版本不一致问题。我认为,一个成熟的软件,应该保持向下兼容,对以前发布的接口,应该最大限度保证兼容,而不是改来改去,所以,我选择最新版的“android-support-v4.jar”,而不是旧版本的。我的选择是否正确,还有待使用中进一步验证,不过目前从我写的简单例子看,工作正常!!

下面详细讲解:

一,新建一个安卓工程。为什么要新建一个安卓工程?建立这个工程后,系统自动加入一个库“appcompat_v7”,这个库的lib目录中就包含了当前Eclipse使用的版本的支持库“android-support-v4.jar”。我们通过先建立这个工程,从而得到最新版的“android-support-v4.jar”,以便一会同步这个库。

我们建立一个名叫"Test"的安卓工程,建立过程很简单,我就不讲了,自己弄一下吧。有一点需要注意,我们选择最低版本SDK时候,应该低于3,那样才能体验到 ActionBarSherlock。建立Test安卓工程后Eclipse的样子。

二,引入 ActionBarSherlock库和例子。下载完zip版的 ActionBarSherlock后,解压缩到任意位置,看目录,确定我们要引入的库和例子。

库和目录确定完毕后,就开始引入了,首先引入库:

1,在工程空白区点鼠标右键,在右键菜单中选择“import”,对所有已经存在的工程引入都是这样操作。

2,选择引入已经存在的安卓工程。

3,选择我们要引入的工程。

引入我们需要的工程后,像下面的样子。

4,引入成功后的工程目录。

5,确认我们引入的库是否已经作为库可以让其它工程直接引入。

到此,ActionBarSherlock引入完毕。

接下来,第一件事就是同步“android-support-v4.jar”。我们比较一下“appcompat_v7->lib”和“actionbarsherlock->lib”里的“android-support-v4.jar”,我们会发现“appcompat_v7->lib”的“android-support-v4.jar”最后修改时间比“actionbarsherlock->lib”里的要晚,也要比那个大,那么我们选择用“actionbarsherlock->lib”里的“android-support-v4.jar”去覆盖

“actionbarsherlock->lib”里的“android-support-v4.jar”。直接拷贝覆盖就可以了,这样两个工程里的“android-support-v4.jar”就同步了。接下里对其它工程“android-support-v4.jar”的同步也是这样操作。

接着我们引入actionbarsherlock的例子。引入过程和上面的过程一样。引入后应该是这样了,一下子错误。

别怕啊,这些错误应该是两个原因造成的:

一,这个例子没有正确引用actionbarsherlock。

二,Eclipse没有使用UTF-8编码。

首先,解决引入actionbarsherlock库:

在例子工程上鼠标右键,在右键菜单上选择“Properties”,打开当前工程属性。

删除先前引入的包,现在包路径不正确了。

添加正确的包。

现在我们安装上面覆盖“android-support-v4.jar”的步骤,把当前例子工程里的lib中的“android-support-v4.jar”也覆盖掉,不用管错误,重新启动一下Eclipse。发现只有一个错误了。

下面修改工程的默认编码为UTF-8:

现在你就可以连接虚拟机或者真机,直接运行“ActionBarSherlock”的例子了!!

在下一篇中,我将直接用刚才建立的安卓工程使用我引入的ActionBarSherlock库!

ActionBarSherlock(一)在Eclipse中如何引入ActionBarSherlock和它的例子?的更多相关文章

  1. eclipse中myBatis引入

    1.添加config.xml配置文件 2.定义与数据库的数据实体映射类 3.创建操作表的是sql映射文件 即:mapper.xml 4.在配置文件config.xml中注册sql映射文件(步骤三创建的 ...

  2. 在Eclipse中创建Maven多模块工程的例子

    .配置eclipse的maven .在Eclipse里面New -> Maven Project -> 选择“Create a simple project” Group Id: com. ...

  3. eclipse中tomcat配置JNDI链接Oracle数据源例子

    最近换到新公司,第一次接触JNDI方式连接数据库. 一开始怎么找也没找到数据库地址在哪里配置的,后面跟代码发现spring中初始化dataSource是通过这个类JndiObjectFactoryBe ...

  4. eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错? java.lang.ClassNotFoundException: com.branchitech.app.startup.AppStartupContextListener java.lang.ClassN

    eclipse java项目中明明引入了jar包 为什么项目启动的时候不能找到jar包 项目中已经 引入了 com.branchitech.app 包 ,但时tomcat启动的时候还是报错?java. ...

  5. Android 2.x中使用actionbar - Actionbarsherlock (2)

    先前有一个项目,是基于android4.0来开发,使用到了Fragment及ActionBar,没打算支持android2.1-android2.3系列版本 写完之后,我将此应用发布到百度应用,一天以 ...

  6. Java SE Eclipse中引入第三方jar及class

    使用eclipse开发Java SE 总免不了需要引入第三方的jar或者calss文件.这里给大家说一下如何在eclipse中引入第三方jar或者calss文件. 让我们先了解一下eclipse项目中 ...

  7. 【eclipse jar包】在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可。

    Eclipse中导入外部jar包 在编写java代码时,为方便编程,常常会引用别人已经实现的方法,通常会封装成jar包,我们在编写时,只需引入到Eclipse中即可. 工具/原料 Eclipse 需要 ...

  8. Eclipse中的工程引入jar包后没有整合到一个文件夹而是全部在根目录下显示

    Eclipse中的工程引入jar包后没有整合到一个文件夹而是全部在根目录下显示 解决方案: 1,在Eclipse中,点击window-->Preferences-->Java-->B ...

  9. 在eclipse中引入mybatis和spring的约束文件

    eclipse中引入mybatis约束文件步骤: 首先: config的key值 http://mybatis.org/dtd/mybatis-3-config.dtd mapper的key值 htt ...

随机推荐

  1. jquery中的data-icon和data-role

    转自:https://blog.csdn.net/Sayesan/article/details/83378524 jquery中的data-icon和data-role    data-role参数 ...

  2. WordPress无法发送电子邮件,可能原因:您的主机禁用了mail()函数解决方案

    体验更优排版请移步原文:http://blog.kwin.wang/website/wp-cant-send-email-solution.html 最近折腾了下WordPress,给米表 搭了个论坛 ...

  3. MS SQL 2000 分配权限

    /** 分配权限 **/ use [master]create login [ln-tf\liaobin] from windows;gogrant control server to [ln-tf\ ...

  4. Apache HBase 集群安装文档

    简介: Apache HBase 是一个分布式的.面向列的开源 NoSQL 数据库.具有高性能.高可靠性.可伸缩.面向列.分布式存储的特性. HBase 的数据文件最终落地在 HDFS 之上,所以在 ...

  5. spring错误处理 Build path is incomplete. Cannot find class file for org.springframework.aop.Advisor

    Build path is incomplete. Cannot find class file for org.springframework.aop.Advisor 初学spring,记录一下出现 ...

  6. 对象的notify方法的含义和对象锁释放的三种情况

    1,notify的含义     (1)notify一次只随机通知一个线程进行唤醒 (2)在执行了notify方法之后,当前线程不会马上释放该对象锁,呈wait状态的线程也不能马上获得该对象锁, 要等到 ...

  7. Hadoop Pipes

    [Hadoop Pipes] 1.MapContext的getInputSplit()可以用于获取当前mapper所对象的文件路经,也就是Pipes中,没有InputSplit接口/对象. 2.在Pi ...

  8. 聊一下Python的线程 & GIL

    再来聊一下Python的线程 参考这篇文章 https://www.zhihu.com/question/23474039/answer/24695447 简单地说就是作为可能是仅有的支持多线程的解释 ...

  9. Yii2 windows 安装步骤

    安装 Yii2 高级版应用 基础版可以看官方文档 今天安装了YII2高级版应用 写下步骤 留个记号,以备查询! 在 Windows 中,你首先需要下载并运行 Composer-Setup.exe 查看 ...

  10. 查找yum 安装目录

    [root@DB-Server ~]# rpm -qa | grep -i mysql MySQL-server-advanced-5.6.20-1.rhel5 MySQL-client-advanc ...