2012-01-26 42 views
10

に、私はAPIのFLOTによって設計されたチャートを表示するには、WebViewのを使用していています。幅と高さは、開始時に(感謝setLoadWithOverviewMode(真)とsetUseWideViewPort(に同じでない場合でも、グラフが正しく表示され、全体のWebViewを満たしている無効にダブルタップズーム/ズームを解除Androidの上のWebView

super.onCreate(savedInstanceState); 
    this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
    this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    setContentView(R.layout.graphique); 

    // Get a reference to the declared WebView holder 
    WebView webview = (WebView) this.findViewById(R.id.webView1); 

    // Get the settings 
    WebSettings webSettings = webview.getSettings(); 

    // Enable Javascript for interaction 
    webSettings.setJavaScriptEnabled(true); 

    // Make the zoom controls visible 
    //webSettings.setBuiltInZoomControls(true); 

    // Allow for touching selecting/deselecting data series 
    webview.requestFocusFromTouch(); 

    // Set the client 
    webview.setWebViewClient(new WebViewClient()); 
    webview.setWebChromeClient(new WebChromeClient()); 
    webview.setBackgroundColor(0); 

    webview.getSettings().setLoadWithOverviewMode(true); 
    webview.getSettings().setUseWideViewPort(true); 
    // Load the URL 
    webview.loadUrl("file:///android_asset/graph.html"); 

私はこのコードを使用しています真))。

しかし、ユーザーはまだそれをダブルタップすることで、グラフをズームしてズーム解除することができます。私はこのアクションを防ぎたい

は、私は、偽=クリック可能なフォーカス可能=偽とfocusableintouchmode = falseに私のWebViewを入れてみましたが、それは動作しません。

また、私はこれを試してみました:

webview.getSettings().setBuiltInZoomControls(false); 

しかし、それは動作しません。何か手掛かりはありますか?

+0

http://stackoverflow.com/questions/5125851/enable-disable-zoom-in-android- WebViewの –

+0

同様の質問から私の答えに挑戦していてください。私はこれがうまくいくと思うが、どのように手動幅を拡張する http://stackoverflow.com/a/21472048/510577 –

答えて

24

webView.getSettings().setUseWideViewPort(false); 

を設定し、幅に合わせて手動規模に対処しようとする...

+0

を?私のグラフの幅と高さを定義することはできません、私は自分のコードから直接それを拡大縮小できますか? – Thordax

+1

これを試してください:http://stackoverflow.com/a/3916700/519955 –

+0

ありがとう!正確に私が必要としたもの。 – Thordax

関連する問題