android studio 下使用SlidingMenu侧滑菜单

项目中需要使用到侧滑菜单,由于一直有点抵触使用第三方库,因为大部分库为了兼容各种需求,封装得大都比较笨重,所以就在网上找有没有自己写的自定义侧滑菜单,还真被我找到了史上最简单粗暴实现侧滑菜单 ,使用这个自定义的SlideMenu确实很轻松的给项目集成了侧滑菜单,然后却存在一些问题,比如我的主页中用到viewpager来实现广告控件,当我拉出侧滑菜单时,由于主页广告bannerView自动切换,我猜想是否是由于焦点问题,这样导致侧滑菜单自动执行了menu.close()操作,体验实在太差 ,不能忍。一开始的解决办法是当侧滑菜单滑出时,暂停bannerView自动切换,虽然有点取巧,但还是解决了那个问题。但是经理要求带滑出动画,以及淡入淡出的效果。时间紧迫,想想还是先把它放下,研究了一下大名鼎鼎的侧滑菜单:SlidingMenu框架

接入过程还是碰到了一些小问题,花了些时间,就此简单记录一下

  1. 查了下github,该项目好像不支持compile 方式从maven仓库添加,那就从github上面clone下项目,找到library项目
  2. 打开项目配置:Project Structure --> 左上角加号 --> import gradle project --> 找到对应library(最好改名为slidingMenu,以便一眼可以看出该库)
  3. 同样在Project Structure中添加Depenencies,添加对该项目的引用,或者可以通过moudle下的gradle文件中加入:
 compile project(':slidingMenu')

4.修改slidingMenu gradle文件,大致如下,sdk版本按主项目修改:


修改slidingMenu gradle文件
修改slidingMenu gradle文件

如上算是把library成功导入了主项目,接着开始使用slidingMenu

  • activity_main.xml布局如下:(slidingMenu里面包含项目主页,左侧菜单栏不放入其中)
  <com.jeremyfeinstein.slidingmenu.lib.SlidingMenu xmlns:sliding="http://schemas.android.com/apk/res-auto"
        android:id="@+id/slidingMenu"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <include layout="@layout/activity_main" />
</com.jeremyfeinstein.slidingmenu.lib.SlidingMenu>
  • MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
   
        slidingMenu = new SlidingMenu(this);//创建对象
        slidingMenu.setMode(SlidingMenu.LEFT);//设定模式,SlidingMenu在左边
        slidingMenu.setBehindOffsetRes(R.dimen.sliding_menu_offset);//配置slidingmenu偏移出来的尺寸
        slidingMenu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);//全屏都可以拖拽触摸,打开slidingmenu
        slidingMenu.attachToActivity(this,SlidingMenu.SLIDING_CONTENT);//附加到当前的activity上去
        leftView = inflate(this, R.layout.drawable_tab, null);
        slidingMenu.setMenu(leftView);//也可以直接跟layout id
}
  • menu开关操作
menu.toggle();// 动态判断自动关闭或开启SlidingMenu   
menu.showContent();// 显示内容
menu.showMenu();// 显示SlidingMenu  
  • 大部分情况下还是需要对左侧菜单栏布局进行操作的,监听的话就通过上面的leftView来查找指定的view。

  • menu开关监听

// 监听menu打开  
menu.setOnOpenedListener(new OnOpenedListener() {  
    @Override  
    public void onOpened() {  
    }  
});  
// 监听menu关闭  
menu.setOnClosedListener(new OnClosedListener() {  
    @Override  
    public void onClosed() {  
    }  
}); 

自此已经将slidingMenu接入项目并且使用起来,后续需要找时间研究一下源码

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容