简介:
从android 3.0开始,android加入了一个新的api,actoinbar,随着android 4.0的发布和慢慢的推广开来,很多应用也开始使用google推广的ui设计,而actionbar是其中相当重要的一部分。本人现在对IOS的那种设计有点厌烦,对安卓4.0的设计风格比较感兴趣,然而为了程序的兼容性,又要考虑低版本的问题,所以在这里需要使用到兼容包。
无奈google没有发布3.0之前版本的actionbar的兼容包。还好网上有提供开源的别人开发的,actionbarshelock,以下简称abs.
abs可以让2.x的系统也能使用actionbar,另外现在abs也提供了很多其他3.0以后才提供的功能,比如fragement。这里就只介绍actionbar的使用。
abs的还有一项值得一提的优点就是,如果你在3.0以上的机子上使用,那么它会调用系统原生的actionbar。另外它的使用方法和系统自身的方法相当相似,如果你actionbar本身已经很熟悉了,那么abs也能很快上手。
下载:
程序的下载可以到官网:http://actionbarsherlock.com/download.html 对于WINDOWS的同学来说下载.zip包即可,截止到我发文时,ABS的版本是4.3.1。
在官网中还有“USAGE”的链接,由于软件在不断的更新,教程肯定有力所不能及之处,所以具体的地方还是要看官网的使用说明。
引用:
1、下载好.zip文件以后,将其中的actionbarsherlock文件夹解压到硬盘上的一个位置。
2、打开Eclipse,选择:FIle——New——Project——Android project from Existing Code...然后选择要导入的文件夹,finish就好。
3、右击导入的工程,(应该叫actionbarsherlock),选择最下面一项,属性,在打开的对话框里找“android”,确认那个“is library”被勾选。这样这个项目才可以被当做一个库,让我们的项目来引用。
4、打开个人项目的属性,(在本例中是actionBar),在android中添加Library,点击Add,并把我们刚才导入的库添加进去,有绿色对勾表示添加成功。
5、导入成功后,通常会出现错误。错误的原因是android-support-v4.jar的重复引用。
因为在abs里引用了这个包,而我们的项目里也有这个包,而一般来说这两个包是不一样的,所以会发生错误。只需把两个包换成一样的即可。
如:把abs的libs文件夹里的android-support-v4.jar,复制到我们项目的libs文件夹下一份,并且覆盖掉。
使用:
导入成功后,我们要给我们的程序添加ActionBarSherlock.
1、在程序的AndroidManifest.xml文件中,修改主题,改为:
- android:theme="@style/Theme.Sherlock.Light"
- importcom.actionbarsherlock.app.ActionBar;
- importcom.actionbarsherlock.app.ActionBar.OnNavigationListener;
- importcom.actionbarsherlock.app.SherlockActivity;
- importcom.actionbarsherlock.view.Menu;
- importcom.actionbarsherlock.view.MenuInflater;
- importcom.actionbarsherlock.view.MenuItem;
注意:上面的引用不一定全都会用到。
3、如果要让actionbar显示一些menu按钮,那么我们需要重写activity中的onCreateOptionsMenu,对应的还要重写onOptionsItemSelected来响应这些按钮的点击。另外该activity必须继承ShelockActivity.
- publicclassMainActivityextendsSherlockActivity{
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- }
- @Override
- publicbooleanonOptionsItemSelected(MenuItemitem){
- switch(item.getItemId()){
- caseR.id.menu_delete:
- Toast.makeText(this,"delete",Toast.LENGTH_SHORT).show();
- break;
- }
- returnsuper.onOptionsItemSelected(item);
- }
- @Override
- publicbooleanonCreateOptionsMenu(Menumenu){
- getSupportMenuInflater().inflate(R.menu.activity_main,menu);
- returnsuper.onCreateOptionsMenu(menu);
- }
- }
其中,R.menu.activity_main是菜单的布局文件。内容如下:
- <menuxmlns:android="http://schemas.android.com/apk/res/android">
- <item
- android:id="@+id/add"
- android:icon="@android:drawable/ic_menu_add"
- android:showAsAction="ifRoom"
- android:title="添加"
- android:titleCondensed="添加">
- </item>
- </menu>
这篇先写到这里,希望和大家能给这个文章一些指点。
转载请注明来自:http://blog.csdn.net/icyfox_bupt/article/details/9286387
简介:
从android 3.0开始,android加入了一个新的api,actoinbar,随着android 4.0的发布和慢慢的推广开来,很多应用也开始使用google推广的ui设计,而actionbar是其中相当重要的一部分。本人现在对IOS的那种设计有点厌烦,对安卓4.0的设计风格比较感兴趣,然而为了程序的兼容性,又要考虑低版本的问题,所以在这里需要使用到兼容包。
无奈google没有发布3.0之前版本的actionbar的兼容包。还好网上有提供开源的别人开发的,actionbarshelock,以下简称abs.
abs可以让2.x的系统也能使用actionbar,另外现在abs也提供了很多其他3.0以后才提供的功能,比如fragement。这里就只介绍actionbar的使用。
abs的还有一项值得一提的优点就是,如果你在3.0以上的机子上使用,那么它会调用系统原生的actionbar。另外它的使用方法和系统自身的方法相当相似,如果你actionbar本身已经很熟悉了,那么abs也能很快上手。
下载:
程序的下载可以到官网:http://actionbarsherlock.com/download.html 对于WINDOWS的同学来说下载.zip包即可,截止到我发文时,ABS的版本是4.3.1。
在官网中还有“USAGE”的链接,由于软件在不断的更新,教程肯定有力所不能及之处,所以具体的地方还是要看官网的使用说明。
引用:
1、下载好.zip文件以后,将其中的actionbarsherlock文件夹解压到硬盘上的一个位置。
2、打开Eclipse,选择:FIle——New——Project——Android project from Existing Code...然后选择要导入的文件夹,finish就好。
3、右击导入的工程,(应该叫actionbarsherlock),选择最下面一项,属性,在打开的对话框里找“android”,确认那个“is library”被勾选。这样这个项目才可以被当做一个库,让我们的项目来引用。
4、打开个人项目的属性,(在本例中是actionBar),在android中添加Library,点击Add,并把我们刚才导入的库添加进去,有绿色对勾表示添加成功。
5、导入成功后,通常会出现错误。错误的原因是android-support-v4.jar的重复引用。
因为在abs里引用了这个包,而我们的项目里也有这个包,而一般来说这两个包是不一样的,所以会发生错误。只需把两个包换成一样的即可。
如:把abs的libs文件夹里的android-support-v4.jar,复制到我们项目的libs文件夹下一份,并且覆盖掉。
使用:
导入成功后,我们要给我们的程序添加ActionBarSherlock.
1、在程序的AndroidManifest.xml文件中,修改主题,改为:
- android:theme="@style/Theme.Sherlock.Light"
2、打开程序文件,如:MainActivity.java,引用:
- importcom.actionbarsherlock.app.ActionBar;
- importcom.actionbarsherlock.app.ActionBar.OnNavigationListener;
- importcom.actionbarsherlock.app.SherlockActivity;
- importcom.actionbarsherlock.view.Menu;
- importcom.actionbarsherlock.view.MenuInflater;
- importcom.actionbarsherlock.view.MenuItem;
注意:上面的引用不一定全都会用到。
3、如果要让actionbar显示一些menu按钮,那么我们需要重写activity中的onCreateOptionsMenu,对应的还要重写onOptionsItemSelected来响应这些按钮的点击。另外该activity必须继承ShelockActivity.
- publicclassMainActivityextendsSherlockActivity{
- @Override
- publicvoidonCreate(BundlesavedInstanceState){
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- }
- @Override
- publicbooleanonOptionsItemSelected(MenuItemitem){
- switch(item.getItemId()){
- caseR.id.menu_delete:
- Toast.makeText(this,"delete",Toast.LENGTH_SHORT).show();
- break;
- }
- returnsuper.onOptionsItemSelected(item);
- }
- @Override
- publicbooleanonCreateOptionsMenu(Menumenu){
- getSupportMenuInflater().inflate(R.menu.activity_main,menu);
- returnsuper.onCreateOptionsMenu(menu);
- }
- }
其中,R.menu.activity_main是菜单的布局文件。内容如下:
- <menuxmlns:android="http://schemas.android.com/apk/res/android">
- <item
- android:id="@+id/add"
- android:icon="@android:drawable/ic_menu_add"
- android:showAsAction="ifRoom"
- android:title="添加"
- android:titleCondensed="添加">
- </item>
- </menu>
运行后,效果如图:(虚拟机版本,API-8 2.2)
这篇先写到这里,希望和大家能给这个文章一些指点。
转载请注明来自:http://blog.csdn.net/icyfox_bupt/article/details/9286387
相关推荐
为了解决这个问题,开发者James Sherlock创建了一个库项目——`ActionBarSherlock`。 **ActionBarSherlock库的介绍** `ActionBarSherlock`是一个兼容库,旨在为所有Android版本(从API级别4开始)提供`ActionBar`...
【描述】"SlidingMenuAndActionBarSherlock支持2.3"则提到了另一个库——SlidingMenu,这是一款Android侧滑菜单库,它允许用户在主屏幕内容旁边显示一个可滑动的侧边菜单。通常,这个菜单包含应用的其他选项或导航...
使用这个库,你需要理解如何配置依赖,以及如何在活动中集成和自定义Action Bar。 在`StickyGridHeaders-lib`目录下,通常会包含`StickyGridHeaders`组件的相关库文件和示例代码。这些库文件可能包含了类、接口、...
1. **ActionBarSherlock(abs-library)**:这是一款兼容库,使得开发者能够在Android 2.1及以上版本的应用中使用Action Bar。Action Bar是Android 3.0引入的一种设计元素,提供了一个全局的导航和操作区域。...
《安卓Android源码解析——HoloEverywhere框架详解》 HoloEverywhere是Android系统中一个重要的开源项目,它是对Android 3.0(Honeycomb)引入的Holo设计风格的向下兼容实现,旨在为Android 2.1及更高版本提供原生...
"ActionBarSherlock-4.2.0: 我的项目只需要库文件" 这个标题提到了一个特定的Android开发组件——ActionBarSherlock,版本号为4.2.0。ActionBarSherlock是一个支持库,旨在提供对Android 2.x版本设备上的Action Bar...
标题“ActionBarTest”暗示我们即将讨论的是Android应用开发中的一个重要组件——ActionBar。ActionBar是Android 3.0(API级别11)引入的一个功能强大的界面元素,用于提供应用程序导航和操作。它通常显示在屏幕的...
《SherlockAdapter——一款开源的Android适配器详解》 在Android开发中,适配器(Adapter)扮演着至关重要的角色,它连接数据源与视图,使得数据能够以列表、网格等形式展示在用户界面中。SherlockAdapter,正如其...
SlidingMenu是一款在Android平台上广泛使用的侧滑菜单库,它为开发者提供了实现类似iOS中汉堡菜单效果的功能。这个源码库使得应用可以在主界面的左侧或右侧滑出一个菜单,增强了用户界面的交互性和可访问性。让我们...
在早期的 Android 应用开发中,开发者可能会遇到一个常见的问题——65K 方法数量限制。由于 Dalvik 虚拟机的设计限制,每个 APK 文件中的方法数不能超过 65536 个。当应用逐渐变得庞大,或者引入了大量第三方库时,...
本项目名为"Sliding Drawer Master",意在实现一个全方位——上下左右都能滑动的菜单效果,同时强调代码的简洁性。 在Android开发中,滑动菜单通常通过以下几种方式实现: 1. **SlidingPaneLayout**: Android SDK ...