从android 3.0开始,android加入了一个新的api,actoinbar,不得不说3.0之前android的标题栏确实比较丑,并且还没有任何功能,大部分情况下我都是直接将其隐藏的。
无奈google没有发布3.0之前版本的actionbar的兼容包。还好网上有提供开源的别人开发的,actionbarshelock,以下简称abs.
abs可以让2.x的系统也能使用actionbar,另外现在abs也提供了很多其他3.0以后才提供的功能,比如fragement
abs的还有一项值得一提的优点就是,如果你在3.0以上的机子上使用,那么它会调用系统原生的actionbar。另外它的使用方法和系统自身的方法相当相似,如果你actionbar本身已经很熟悉了,那么abs也能很快上手。
下面是网友分享:
1、不用说,下载 http://actionbarsherlock.com/ 本人下载的是最新4.*的版本2、在eclipse中新建项目ActionbarSherlock build Target要在4.0+ 即 api 14 网上有的说3.2 个人觉得应该是早期版本的问题 actionbarsherlock
中Theme 用到了 holo样式 ,这个好像是 4.0+才有的
3、将下载的actionbarsherlock中的library拷到你的项目ActionbarSherlock下,覆盖。。
4、在你的项目中进行引用。 properties->android->add 加进去
5.然后就可以使用了,使用方法跟官方的Actionbar基本相同,区别好像就是获取Actionbar的方法不同,getSupportActionBar()
问题:
1.自己的项目Buildtarget 也要在4.0+,api 14+。不然有关Theme.Holo xml文件读取不到资源,会导致R文件不能生成。
2.由于actionbarsherlock中自带了android_support_v4的包,所以你不用再导入一个了,以前导入过了也要删除,不然会产生冲突。
3. 有时候会提示 你的程序不是一个库 的错误,只要在ActionbarSherlock中 properties -> android 中,将islibrary勾上就行了。
4.要使用Actionbar要继承sherlockactivity,在配置文件中声明activity时,要添加Theme设置才行,而且只能是三种或parent是这三种。(哪三种自己上官网看吧)