ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android版本上实现ActionBar的效果和功能。当在4.0+的版本使用时,会使用Android自身的ActionBar,当在4.0之前的版本使用时,则会使用ActionBarSherlock自身自定义的一套框架来实现ActionBar的功能。
要获得ActionBarSherlock,我们可以到Git上或者其官网上来下载,这两个网址分别是:
https://github.com/JakeWharton/ActionBarSherlock
http://actionbarsherlock.com/
我是从Git上下载的,当下载完成解压之后会得到一个ActionBarSherlock-master的文件,其目录结构如下:
我们只需要关注其中两个文件夹下的内容,分别是actionbarsherlock和actionbarsherlock-samples,前者是ActionBarSherlock的全部代码,后者是作者提供的一些使用的示例代码。
接下来不妨为eclipse创建一个新的workspace,将其命名为ActionBarSherlock,我们将在这个单独的workspace里来研究学习ActionBarSherlock,然后用eclipse打开这个新的工作空间。
第一步先将actionbarsherlock的工程导入到我们的工作空间,File->Import->Android->Existing Android Code Into Workspace,如下所示:
然后点Next,然后选择我们之前解压的目录下的actionbarsherlock文件夹,将Copy projects into workspace勾选上,点击Finish。
可以看到actionbarsherlock已经导入到了我们的工作空间。
actionbarsherlock这个项目的作用是用来作为其他项目的lib,在项目名称上 右键->properties->Android可以看到下面的Is Library复选框是勾选上的,如果没有,现在勾上。
下一步要导入作者为我们提供的一系列示例代码了。
我们先打开刚才解压的目录下的actionbarsherlock-samples文件夹,里面应该是这样的:
这几个文件夹都是工程目录,我们只需要关注其中的四个就足够了:demos,fragments,roboguice,styled。我们首先将demos项目导入工作空间,方法和之前导入actionbarsherlock一样。导入完毕后如下:
右键项目的名称->properties->Android可以看到,
我们需要将actionbarsherlock项目作为该项目的库,所以这里我们需要操作一下,先将打了红叉的那一条选中->remove,然后点击Add,会看到:
选择actionbarsherlock->OK,会看到:
这样就完成了,我们可以在这个项目中使用库项目的所有代码和资源了。
编译一下项目,然后就可以在手机上跑实例代码了。如果有问题,多检查一下代码的编码格式(UTF-8),clean几次然后编译几次,不会有问题的。
接下来,用同样的方法,我们可以把其他三个示例项目导入到工作空间中,但是这个时候你可能会遇到一个问题,比如说在导入fragments这个项目的时候会出现下面的情况:
因为和之前导入的项目同名了,所以我们还要将之前导入的项目改一下名字,并将后面导入的项目都改一下名字,防止他们同名,这样就可以了。
看到网上有些人教你将actionbarsherlock的代码和资源copy出来手动加到自己的项目里,这样其实是不对的。
转载请注明