android解決同一個界麵上ScrollView和百度地圖(ListView等可滾動控件)滾動衝突問題
android解決同一個界麵上ScrollView和百度地圖(ListView等可滾動控件)滾動衝突問題
如下代碼所示:
其中 scrollView 為外層的大的scrollView 控件。
mMapView 為嵌在ScrollView中的可觸摸控件,這裏為百度地圖。
// 重寫onTouch()事件,在事件裏通過requestDisallowInterceptTouchEvent(boolean)方法來設置父類的不可用,true表示父類的不可用 //解決地圖的touch事件和scrollView的touch事件衝突問題 mMapView.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { if(event.getAction() == MotionEvent.ACTION_UP){ scrollView.requestDisallowInterceptTouchEvent(false); }else{ scrollView.requestDisallowInterceptTouchEvent(true); } return false; } });
如果是ListView嵌套在ScrollView中,解決方法是一樣的。
最後更新:2017-04-03 14:54:04