2012-10-29 95 views
1

我在我的應用程序中有webview,我將動態獲取該webview的數據,我正在爲該視圖控制放大。 當我得到這個網址http://content.vaayoo.com/AppsPlatForm/DealsaheadWeb/[email protected]時,放大控制正在出現。 但是當我得到下面的網址 https://maps.google.com/?saddr=12.9302,77.5831&daddr=12.928464,77.584258,變焦控制沒有出現。這個問題令人興奮嗎?任何形式的幫助,高度讚賞..下面 是我的代碼..縮放控制不適用於地圖

protected void applyStyles() { 

    // applying the zooming property to webview. 
    final FrameLayout.LayoutParams ZOOM_PARAMS = new FrameLayout.LayoutParams(
      ViewGroup.LayoutParams.WRAP_CONTENT, 
      ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.TOP); 

    View zoom = ((WebView) view).getZoomControls(); 
    FrameLayout ContentView = (FrameLayout) ((Activity) context) 
      .getWindow().getDecorView().findViewById(android.R.id.content); 
    ContentView.addView(zoom, ZOOM_PARAMS); 
    zoom.setVisibility(View.VISIBLE); 
} 

下面是我在哪裏做的所有的設置web視圖的代碼..提前

if (data != null && webview != null) { 
     String webData = data.toString(); 
     webview.getSettings().setJavaScriptEnabled(true); 
     webview.getSettings().setLoadWithOverviewMode(true); 
     webview.getSettings().setDefaultZoom(WebSettings.ZoomDensity.MEDIUM); 
     webview.getSettings().setUseWideViewPort(false); 
     //webview.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS); 
     webview.getSettings().setBuiltInZoomControls(true); 
     webview.getSettings().setSupportZoom(true); 


     webview.requestFocus(View.FOCUS_DOWN); 
     webview.setOnTouchListener(new View.OnTouchListener() { 

      public boolean onTouch(View v, MotionEvent event) { 

       switch (event.getAction()) { 
        case MotionEvent.ACTION_DOWN: 


        case MotionEvent.ACTION_UP: 
         if (!v.hasFocus()) { 
          v.requestFocus(); 
         } 

         break; 
       } 
       return false; 
      } 
     }); 
     System.out.println("webdata" + webData); 
     if (webData.startsWith("http")) { 
      webview.loadUrl(webData); 



     } else { 
      webview.loadData(webData, "text/html", "utf-8"); 
     }   
    } 

謝謝

+0

你爲什麼不使用MapView的? –

回答

2

如果你有webview,所以你必須啓用這些webview的縮放屬性像這樣 -

webview.getSettings().setSupportZoom(true); 
webview.getSettings().setBuiltInZoomControls(true); 

之後,默認的縮放功能會顯示給您,我希望這個建議對您有所幫助。 謝謝

+0

hey dainel,我已啓用這些設置。但仍然無法看到控制中的縮放.. – RockandRoll

+0

但對我來說,它是在長焦內置變焦工作。 – Ravi

1

嘗試將setJavaScriptEnabled設置爲true。您還可以通過

WebSettings webSettings = myWebView.getSettings(); 
webSettings.setJavaScriptEnabled(true); 

也能達到它檢查以下的WebView性質存在

webSettings.setSupportZoom(true); 
webSettings.setBuiltInZoomControls(true);