您的位置:首页 > 其它

SlidingMenu按钮事件失效无法点击问题解决

2017-07-22 21:37 525 查看
前言:

由于项目需要用到侧滑菜单,于是下载了网上比较流行的SlidingMenu控件,这个确实挺方便的而且还是开源的,在此感谢原作者的无私奉献精神。本文主要是分享下关于按钮事件失效问题的解决方法,ok,进入正题。

博主在项目中启用下边这种模式,发现会导致一个问题,那就是菜单内的控件全部无法响应,起初以为是系统问题,仔细比对后发现其实不是。

//按钮全屏均可以触发

menu.setTouchModeBehind(SlidingMenu.TOUCHMODE_FULLSCREEN);

一番研究后,又尝试了:

menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN);,

这种模式下,事件响应问题是解决了,但是菜单内侧滑却无法关闭。。。

解决过程花费了博主不少时间,尝试了各种方法均无果,但总算功夫不负有心人,辛苦搜索后终于发现,原作者已经提供了相关的解决方法,相关连接:
https://github.com/jfeinstein10/SlidingMenu/issues/446
博主尝试了其中的解决方案,还真是奏效了~~~

,特发博文,希望能帮到遇到同样问题的孩纸,避免在这个问题上再次入坑!


解决方法:

1、找到CustomViewAbove.java,搜索onTouchEvent函数,找到MotionEvent.ACTION_DOWN,修改break为return mQuickReturn;

2、找到CustomViewBehind.java,搜索onInterceptTouchEvent函数,

将原先的:return !mChildrenEnabled;

替换为:return mViewAbove.onInterceptTouchEvent(e);

3、找到CustomViewBehind.java,搜索onTouchEvent函数,

将原先的:return !mChildrenEnabled;

替换为:return mViewAbove.onTouchEvent(e);

4、找到你的菜单布局文件,在根布局上添加属性:

android:clickable="true"

ok,搞定以上,就完美运行的了,听有些孩纸说右侧滑还是没用,博主也顺带测试了下这个问题,暂时未发现,大家有问题欢迎交流讨论。

后记:关于如何集成SlidingMenu,网上一堆教程,大家自行搜教程哦,我就不再废话了,毕竟大家的时间都很宝贵哈~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐