閱讀475 返回首頁    go 阿裏雲 go 技術社區[雲棲]


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

  上一篇:go 龐果網之建立信號基站
  下一篇:go nessus 使用技巧