解决Android抽屉被击穿问题
1,创建一个抽屉DrawerLayout,在V4包下android.support.v4.widget.DrawerLayout,在要设置抽屉的布局中设置android:layout_gravity="right|left"属性,看效果:

2,在主Activity中
Step1:找到DrawerLayout控件
//找到DrawerLayout的控件
dl_drawerlayout_second = (DrawerLayout) findViewById(R.id.dl_drawerlayout_second);
Step2:对DrawerLayout控件进行监听,且设置一个成员变量boolean类型的flag标记,用于记录抽屉的开关,这里要提一下,用代码打开抽屉的方法是dl_drawerlayout_second.openDrawer(Gravity.RIGHT);里面的参数是根据你抽屉的位置,代码如下:
//设置监听DrawerLayout
dl_drawerlayout_second.setDrawerListener(new DrawerListener() { @Override
public void onDrawerStateChanged(int arg0) {
// TODO Auto-generated method stub } @Override
public void onDrawerSlide(View arg0, float arg1) {
// TODO Auto-generated method stub } @Override
public void onDrawerOpened(View arg0) {
// TODO Auto-generated method stub
flag = true;
} @Override
public void onDrawerClosed(View arg0) {
// TODO Auto-generated method stub
flag = false;
}
});
Step3:当你打开抽屉后,在抽屉下面展示的组件中设置点击触摸事件
//设置手势问题
lv_second_listView_content.setOnTouchListener(new OnTouchListener() { @Override
public boolean onTouch(View v, MotionEvent event) { //进行判断
if (SecondActivity.instance.getFlag()) {
//表示抽屉被打开
event.setAction(MotionEvent.ACTION_CANCEL); //将所有分发的事件对象都取消掉
} return false;
}
});
Step4,还有一种简单的思想就是在布局文件中将我们的DrawerLayout添加一个点击事件,但对这个点击事件不做处理,这样就不会产生抽屉被击穿的效果了(推荐使用上面介绍的这种方式,这样逻辑性更强)。
解决Android抽屉被击穿问题的更多相关文章
- wemall doraemon中Android app商城系统解决左侧抽屉菜单和viewpager不能兼容问题
完美解决左侧抽屉菜单和viewpager不能兼容左右滑动的问题,可进行参考. WeMall-Client/res/layout/wemall_main_ui.xml </RadioGroup&g ...
- Android权限管理之RxPermission解决Android 6.0 适配问题
前言: 上篇重点学习了Android 6.0的运行时权限,今天还是围绕着Android 6.0权限适配来总结学习,这里主要介绍一下我们公司解决Android 6.0权限适配的方案:RxJava+RxP ...
- 解决Android中No resource found that matches android:TextAppearance.Material.Widget.Button.Inverse问题
解决Android中No resource found that matches android:TextAppearance.Material.Widget.Button.Inverse问题http ...
- 解决Android Graphical Layout 界面效果不显示
解决Android Graphical Layout 界面效果不显示 qq463431476
- 不完全解决Android微信HTML5 播放视频的问题(不显示控制条,可交互)
首先你需要知道以下内容: http://ad.weixin.qq.com/learn/2-3-3--%E9%80%9A%E7%94%A8%E5%BA%93 这是微信为广告商开放的API,我一直认为只有 ...
- 解决Android SDK Manager更新、下载速度慢
hosts文件里面原来的内容不做修改,只是添加内容 方法/步骤 先看看如何加快更新速度,再说如何更新. 首先更新host文件,如图,打开目录 C:\Windows\System32\drivers\e ...
- Android 抽屉效果的导航菜单实现
Android 抽屉效果的导航菜单实现 抽屉效果的导航菜单 看了很多应用,觉得这种侧滑的抽屉效果的菜单很好. 不用切换到另一个页面,也不用去按菜单的硬件按钮,直接在界面上一个按钮点击,菜单就滑出来,而 ...
- 解决Android Studio 和 Android SDK Manager 无法在线更新的问题.
升级时提示 Connection failed. Please check your network connection and try again 修改安装目录下bin\studio.exe.vm ...
- android抽屉总结
android抽屉:1.DrawerLayout 在xml文件中要注意写全称:android.support.v4.widget.DrawerLayout <LinearLayout /> ...
随机推荐
- docker squid---but git proxy should specify by git config --global http.proxy http:...
Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.t ...
- android通过pc脚本执行sqlite3脚本
最近在调研市面上的一些android db框架,需要经常重复的输入一堆比如 adb shell cd /data/data/com.example.testandroiddb/databases sq ...
- JQuery中html、append、appendTo、after、insertAfter、before、insertBefore、empty、remove的使用
html方法,给元素添加html代码或者清空html代码(参数为空字符串): append向元素的末尾添加html代码: appendTo这个方法跟append方法的很像,只是要添加的html代码的目 ...
- css3 loading效果
file:///E:/zhangqiangWork/2014/SPDbank/index.html 参考该网站 http://tobiasahlin.com/spinkit/ 查看源代码把里面的dom ...
- JQuery 内容过滤选择器
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- 【转】【翻】Android Design Support Library 的 代码实验——几行代码,让你的 APP 变得花俏
转自:http://mrfufufu.github.io/android/2015/07/01/Codelab_Android_Design_Support_Library.html [翻]Andro ...
- oracle 中的游标
oracle 中的游标 通俗易懂的sql代码直接上! --简单的游标使用滴呀 --使用FOR OBJ IN OBJS LOOP ......END LOOP; DECLARE CURSOR C_JOB ...
- inline-block元素的空白间距
inline-block元素的空白间距 html代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...
- svn使用dump和hotcopy进行脚本备份
[root@svn shell]# cat repolist dev-arcdev-bmdev-crmdev-paydev-pmdev-portaldev-riskhrproductqarep-op ...
- C语言下WebService的使用方式
用gSoap工具: 1.在dos环境中到gSoap工具对应的目录gsoap_2.8.18\gsoap-2.8\gsoap\bin\win32路径下,执行wsdl2h -c -o *.h ht ...