2012-02-02 12 views
1

がロードされます。AndroidのWebViewのは、ページの後にズームアウト、私は次のコードで初期化さWebViewを持って

_webView.setWebViewClient(new WebViewClient() { 
    @Override 
    public void onPageFinished(WebView view, String url) { 
     while (view.zoomOut()); 
    } 
_webView.loadURL("path/to/image.png"); 

をしかし、これは動作しません。 WebViewはロード中にズームアウトします。しかし、それが終了すると、ズームインされます。

画像を表示するためにWebViewを使用するページがロードされた後に、他の方法で完全にズームアウトする方法はありますか?

答えて

8

コードのこの部分を試してみてください:

public class WebViewSampleActivity extends Activity 
{ 
    WebView wb; 
    private class HelloWebViewClient extends WebViewClient 
    { 
     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     { 
      return false; 
     } 
    } 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main);  
     wb=(WebView)findViewById(R.id.webView1);   
     wb.getSettings().setJavaScriptEnabled(true); 
     wb.getSettings().setLoadWithOverviewMode(true); 
     wb.getSettings().setUseWideViewPort(true); 
     wb.getSettings().setBuiltInZoomControls(true); 
     wb.getSettings().setPluginState(WebSettings.PluginState.ON); 
     wb.getSettings().setPluginsEnabled(true);   
     wb.setWebViewClient(new HelloWebViewClient()); 
     wb.loadUrl("http://www.foofoo.com");   
    } 
} 

は、この情報がお役に立てば幸いです。

+1

は 'wb.getSettings(ありがとう、 ).setLoadWithOverviewMode(true); '私のトリックでした:D – kroegerama

+0

ようこそ。確かにそうですが、より良い結果を得るために 'wb.getSettings()。setUseWideViewPort(true)'もそれに含めることもできます。とにかく、私は自分のコードにすべての重要な設定を含めました。それはどこかで失敗することを望んでいませんでした。 :) BTW、答えを受け入れてくれてありがとう:) – Ghost

+1

私は '.setUseWideViewPort(true)'を使っています。そして今、次のものもあります: '.setDefaultZoom(ZoomDensity.FAR); .setBuiltInZoomControls(true); .setLoadWithOverviewMode(true); 'これは私の目的にとって最高の結果をもたらすはずです。再度ありがとう=) – kroegerama

1

ではなくonPageFinished()で何もしない、これは

+2

申し訳ありませんが、これは私のためには機能しませんでした。 – kroegerama

1

これらを助けwebview.getSettings().setDefaultZoom(WebviewSetting.ZoomDensity.FAR);

希望を使用する画像をロードするときに、2つの最も重要なコマンドです:

webView.getSettings().setLoadWithOverviewMode(true); 
webView.getSettings().setUseWideViewPort(true); 
関連する問題