2012-11-22 4 views
1

마커 등으로 Google지도를 표시하기 위해 WebView를 만들었습니다.이 기능은 꽤 잘 작동하고 장치 (HTC 감각)에서 issus없이지도를 확대/축소 할 수 있지만 켜기는 가능합니다. 다른 장치에서는 줌이 가능하지 않을 때가 있습니다. 이미 setSupportZoom (true) 및 setBuiltInZoomControls (true)를 시도했지만 작동하지 않습니다. 지도를 확대하는 대신 사진의 확대/축소와 같이 내용의 크기를 조정합니다.Android의 WebView에서 Google지도 확대/축소

내 questin은 어떻게 모든 장치에서지도를 확대 할 수 있습니까?

답변

1

확대/축소하려면 - 축소 한 다음 기본 확대/축소 컨트롤을 사용하지 마십시오. 귀하의 XML 파일에서 ..

<ZoomControls android:id="@+id/zoomctrl" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:gravity="top|center_horizontal" 
/> 

그리고 지금. 당신의 활동에서 ZoomControls zc를 선언하고 초기화하십시오;

class CurOverlay extends Overlay { 
    private GeoPoint pointToDraw; 

    public void setPointToDraw(GeoPoint point) { 
     pointToDraw = point; 
    } 

    public OnTouchListener mMapTouch = new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      Log.v("TAG", "inside onTouch"); 
      zoomlvl = curmapView.getZoomLevel(); 
      if (zoomlvl == 19) 
       zc.setIsZoomInEnabled(false); 
      else if (zoomlvl == 1) 
       zc.setIsZoomOutEnabled(false); 
      else { 
       zc.setIsZoomInEnabled(true); 
       zc.setIsZoomOutEnabled(true); 
      } 
      return false; 
     } 
    }; 
      ... 
      .... 

} 

과의 줌의 클릭 이벤트이며 축소 ..

zc.setOnZoomInClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        zc.setIsZoomOutEnabled(true); 
        curmapController.zoomIn(); 
        if (curmapView.getZoomLevel() == 19) 
         zc.setIsZoomInEnabled(false); 

       } 
      }); 
      zc.setOnZoomOutClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        zc.setIsZoomInEnabled(true); 
        curmapController.zoomOut(); 
        if (curmapView.getZoomLevel() == 1) 
         zc.setIsZoomOutEnabled(false); 
       } 
      }); 

희망이지도 도움이 당신에게

+0

감사합니다! 나는 그것을 시험해 보았다. – ZeroTek

관련 문제