바이두지도는 최근 프로젝트에서 유용하며 일반적으로지도는 전체 인터페이스에 표시되지만,이 제품을 디자인 할 때 프로젝트 관련 정보를 입력하고 아래지도에서 위치를 선택합니다. 프로젝트의 위치입니다.
레이아웃은 아래 그림과 같습니다. (상단의 일부가 미끄러 져 나오고 맵의 일부가 미끄러 져 나오지 않았습니다)
위의 정보가 화면에 채워져 있기 때문에 Scrollview에서 MapView를 중첩하는 데 사용됩니다. 모두가 MapView가 슬라이드 할 수 있다는 것을 알고 있지만, Scrollview에 중첩 된 경우 MapView는 자식 컨트롤이므로 슬라이딩 이벤트는 부모가 제어합니다. 컨테이너 Scrollview가 소비되므로 맵을 아래로 내리고 싶을 때 매번 스크롤하는 Scrollview입니다.
어떻게해야합니까? ? ?
BaiduMap에서 setOnMapTouchListener listener를 설정하기 만하면 BaiduMap을 터치하면 Scrollview의 터치를 차단할 수 있습니다.
다음과 같은 :
mBaiduMap.setOnMapTouchListener(new BaiduMap.OnMapTouchListener() {
@Override
public void onTouch(MotionEvent motionEvent) {
if (motionEvent.getAction() == MotionEvent.ACTION_UP) {
scrollView.requestDisallowInterceptTouchEvent(false);
} else {
scrollView.requestDisallowInterceptTouchEvent(true);
}
}
});
슬라이딩 충돌을 완벽하게 해결하여지도에서 손가락을 드래그하면 원하는대로지도를 드래그 할 수 있습니다.