已解决
DrawerLayout的点击事件会穿透到底部,如何拦截?
来自网友在路上 147847提问 提问时间:2023-11-01 12:17:18阅读次数: 47
最佳答案 问答题库478位专家为你答疑解惑
DrawerLayout实现侧后,发现了一个问题。点击DrawerLayout的画面,会触发覆盖的底层页面的控件。由此说明点击事件穿透到了底部。但是我只需要触发抽屉布局里的控件,不想触发底层被覆盖的看不见的按钮,由此我想到的时让抽屉页面拦截点击事件即可。
解决方法:在侧滑监听里的onDrawerOpened监听中添加一个配置:
drawerView.setClickable(true);
如此就拦截了点击事件。具体代码如下:
//抽屉布局添加点击监听myDrawerLayout.addDrawerListener(new DrawerLayout.DrawerListener() {@Overridepublic void onDrawerSlide(View drawerView, float slideOffset) {super.onDrawerSlide(drawerView, slideOffset);//LogUtil.i("onDrawerSlide");}@Overridepublic void onDrawerOpened(View drawerView) {super.onDrawerOpened(drawerView);LogUtil.i("onDrawerOpened");drawerView.setClickable(true);}@Overridepublic void onDrawerClosed(View drawerView) {super.onDrawerClosed(drawerView);LogUtil.i("onDrawerClosed");}@Overridepublic void onDrawerStateChanged(int newState) {super.onDrawerStateChanged(newState);LogUtil.i("onDrawerStateChanged");}});
查看全文
99%的人还看了
猜你感兴趣
版权申明
本文"DrawerLayout的点击事件会穿透到底部,如何拦截?":http://eshow365.cn/6-29327-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 为什么要安装防静电门禁闸机
- 下一篇: 金山文档轻维表做数据库结合油猴脚本检索