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. C++builder XML XSL 代码生成

    void __fastcall TFrmGenCode::XSLTxml1Click(TObject *Sender) { // XSLT转换xml文件格式 _di_IXMLDocument xml; ...

  2. 03-使用html静态页面展示执行效果

    使用工作流框架可以做什么事情?写代码呗,没那么简单.

  3. 2015年传智播客JavaEE 第168期就业班视频教程 02-ERP简介

    其实ERP描述的是管理一个企业的整体的所有的资源.ERP是帮你管整个企业的运行.那它是管哪一类企业呢?比如说帮光线传媒.ERP更多是用在生产制造企业,这是最好的,其次的就是这种销售型企业,二道贩子那种 ...

  4. Python_08-常用模块

    1     常用模块介绍 1.1      os模块 1.2      sys模块 1.3      built-in内置模块 1.4      time模块 1.5      re模块 2     ...

  5. $_SERVER['PHP_AUTH_USER']

    PHP 的 HTTP 认证机制仅在 PHP 以 Apache 模块方式运行时才有效,因此该功能不适用于 CGI 版本.在 Apache 模块的 PHP 脚本中,可以用 header() 函数来向客户端 ...

  6. Django基础学习六之渲染

    今天简单的介绍一下Django的template的渲染和Django的template的基本的语法 首先我们先启动一个django的shell,首先需要进入django的工程目录下启动django的s ...

  7. IPMI (Intelligent Platform Management Interface)

    4.3. ipmitool - utility for controlling IPMI-enabled devices 4.3.1. ipmitool 4.3.1.1. ubuntu 确定硬件是否支 ...

  8. php通过反射执行某方法

    简单记录下通过反射来获取某方法的参数,然后利用php内置函数类执行此方法 一个简单的test类 class test { //2个参数默认值 public function b($name='lemo ...

  9. adf 日志输出

    1,选中ViewController或是Model,在属性框中,做如下配置,run/debug后可以看到日志信息中,将adf的整个执行过程很详细的打印出来了. 在每个项目的Project proper ...

  10. http://4526621.blog.51cto.com/4516621/1343369

    http://4526621.blog.51cto.com/4516621/1343369