android解决同一个界面上ScrollView和百度地图(ListView等可滚动控件)滚动冲突问题
16lz
2021-01-24
android解决同一个界面上ScrollView和百度地图(ListView等可滚动控件)滚动冲突问题
如下代码所示:
其中 scrollView 为外层的大的scrollView 控件。
mMapView 为嵌在ScrollView中的可触摸控件,这里为百度地图。
// 重写onTouch()事件,在事件里通过requestDisallowInterceptTouchEvent(boolean)方法来设置父类的不可用,true表示父类的不可用//解决地图的touch事件和scrollView的touch事件冲突问题mMapView.setOnTouchListener(new View.OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {if(event.getAction() == MotionEvent.ACTION_UP){scrollView.requestDisallowInterceptTouchEvent(false);}else{scrollView.requestDisallowInterceptTouchEvent(true);}return false;}});
如果是ListView嵌套在ScrollView中,解决方法是一样的。
更多相关文章
- Android(安卓)Material Design 控件之TabLayout 学习
- Android(安卓)使用基于位置的服务(一)
- Android(安卓)Touch事件分发机制
- 转载:Android(安卓)实用工具Hierarchy Viewer实战
- Android核心分析 ------ 电话系统之rilD
- 一步步探索学习Android(安卓)Touch事件分发传递机制(一)
- Android:图文解析带你快速了解RxJava原理
- Google API V2申请及Google Map简单应用例子
- Android原生 Spinner下拉选择框 使用中遇到的问题和使用技巧