zoukankan      html  css  js  c++  java
  • 在自己的android工程中使用actionbarsherlock以及slidingmenu

    最近在做一个东西,然后要求能兼容2.3以上手机(这个要求实在是蛋疼,现在充话费送的手机系统都是4.0.3的了)加上需要的抽屉的效果和Google自带的Drawer的样式不太一样,无奈之下,只能自己用开源库重新写 ,上网搜一下,大家都推荐使用Actionbarsherlock+slidingmenu的组合,自己尝试了一下下

    首先先去下载这两个开源项目,附上下载地址

    Actionbarsherlock:http://actionbarsherlock.com/download.html

    Slidingmenu:https://github.com/jfeinstein10/slidingmenu

    下载下来之后解压缩打开

                                                   

     我用红线标出来的两个文件夹就是此次要用到的

     在eclipse里面新建一个名为ActionbarSherlockLibrary的工程,在第二部的时候勾选mark this project as a library 这个选项,然后一路next,工程建好之后

    把actionbarsherlock里面的东西复制到 ActionbarSherlockLibrary 工程下面,全部覆盖,会有重复文件,注意选择全部替换,在eclipse里面右键->refresh

    同样,建一个名为SlidingMenuLibrary的工程,做同样的操作,然后刷新。

    这一步很重要,把你的目的工程(你要使用slidingmenu的sherlockavtionbar的工程),ActionbarSherlockLibrary,SlidingMenuLibrary三个工程使用的

    android-support-v4.jar必须是同一个,不然会报错,就简单的复制粘贴替换就可以了
     

    在你的 SlidingMenuLibrary 工程,右键->properties->android 的library视图下面选择add添加ActionbarSherlockLibrary,

     然后把com.jeremyfeinstein.slidingmenu.lib.app 里面的SlidingFragmentActivity里面的

    1 public class SlidingFragmentActivity extends FragmentActivity implements SlidingActivityBase

     替换成

    1 public class SlidingFragmentActivity extends SherlockFragmentActivity implements SlidingActivityBase  

     然后把com.jeremyfeinstein.slidingmenu.lib.app 里面的SlidingListActivity里面的

    1 public class SlidingListActivity extends ListActivity implements SlidingActivityBase  

     替换成

    1 public class SlidingListActivity extends SherlockListActivity implements SlidingActivityBase

     然后把com.jeremyfeinstein.slidingmenu.lib.app 里面的SlidingPreferenceActivity里面的

    1 public class SlidingPreferenceActivity extends PreferenceActivity implements SlidingActivityBase  

     替换成

    1 public class SlidingPreferenceActivity extends SherlockPreferenceActivity implements SlidingActivityBase

     然后,在你的目的工程右键->properties里面和前面一样的方法,导入两个工程,就可以,正常使用两个开源库了

    在使用的时候,你要使用Actionbarsherlock 的Activity里面集成的类改为SherlockActivity 

    并且在实例化actionbar的时候使用方法

    mAction = getSupportActionbar();

    其他的方法是基本上一样的,就是注意你的Activity中的Menu以及MenuItem的方法要使用

    import com.actionbarsherlock.view.Menu;
    import com.actionbarsherlock.view.MenuItem;

     两个包里面的方法

     1 menu = new SlidingMenu(this);
     2 //实例化Slidingmenu
     3 menu.setMode(SlidingMenu.LEFT);
     4 //设置Slidingmenu的滑出方向,有LEFT,RIGHT,LEFT_RIGHT         menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);

     5//设置Slidingmenu的有效滑出触摸位置 6menu.setBehindWidth(getResources().getDimensionPixelSize(
     7                 R.dimen.menu_width));
     8 //设置Slidingmenu的滑出的宽度    
     9 menu.attachToActivity(Act_CommdotityList.this,
    10                 SlidingMenu.SLIDING_WINDOW);
    11 //吧Slidingmenu添加到Activity
    12 //设置slidingmenu的滑出范围
    13 //SLIDING_WINDOW滑出区域为整个屏幕
    14 //SLIDING_CONTENT为只滑出Actionbar下面的区域
    15 menu.setMenu(R.layout.sliding_menu);

    16 //添加Slidingmenu的布局文件 

     这篇文章先到这里,剩下的我还需要进一步研究,不过sherlockActionbar的使用方法和actionbar的方法基本相同,所以相信大家都会用

  • 相关阅读:
    gitlab centos 安装配置运维笔记
    CentOS 7 升级内核 Kernel
    VMware 桥接模式 复制物理网络连接状态的作用
    diskpart setid value list
    怎样判断Windows的DPI大小?
    Camtasia Studio 6录制视频时鼠标闪烁的解决办法
    ssh的各个jar包作用
    MyEclipse优化技巧
    Struts详细用法
    Ajax的readyState和status属性
  • 原文地址:https://www.cnblogs.com/cwr941012/p/3712230.html
Copyright © 2011-2022 走看看