Android|Android 解决百度地图和ScrollView的滑动冲突
在MapView之外再套一层RelativeLayout或者LinearLayout,并且重写RelativeLayout或者LinearLayout
代码如下:
public class MyRelLayout extends RelativeLayout{
private ScrollView mScrollView;
//这三个方法必须有
public MyRelLayout(Context context) {
super(context);
}
public MyRelLayout(Context context,Attribute Setattrs) {
super(context,attrs);
}
public MyRelLayout(Context context,AttributeSet attrs,int defStyleAttr) {
super(context,attrs,defStyleAttr);
}
public void setScrollView(ScrollView scrollView){@Override
this.mScrollView=scrollView;
}
public boolean onInterceptTouchEvent(MotionEvent ev) {
Log.d("maprel","--------:onInterceptTouchEvent");
if(ev.getAction()==MotionEvent.ACTION_UP) {
mScrollView.requestDisallowInterceptTouchEvent(false); //手离开地图ScrollView恢复原来的滑动状态
}else{
mScrollView.requestDisallowInterceptTouchEvent(true); //调用此方法后ScrollView的touch事件将不会被触发
}
return false;
}
【Android|Android 解决百度地图和ScrollView的滑动冲突】}
推荐阅读
- parallels|parallels desktop 解决网络初始化失败问题
- android第三方框架(五)ButterKnife
- 考研英语阅读终极解决方案——阅读理解如何巧拿高分
- MybatisPlus|MybatisPlus LambdaQueryWrapper使用int默认值的坑及解决
- Android中的AES加密-下
- 带有Hilt的Android上的依赖注入
- SpringBoot调用公共模块的自定义注解失效的解决
- 解决SpringBoot引用别的模块无法注入的问题
- android|android studio中ndk的使用
- Android事件传递源码分析