2017-02-03 17 views
0

私はwebviewを使用しています。インターネットがない場合、私は自分の断片にpngを表示したいと思います。 しかし、PNGはフルスクリーンを占めていません。ここに私のコードです -画像全体を表示するwebview

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View view = inflater.inflate(....); 


     webview = (WebView)view.findViewById(R.id.webview1); 

     webview.getSettings().setJavaScriptEnabled(true); 
     webview.setWebViewClient(new WebClient(getActivity())); 
     webview.loadUrl(url); 

     return view; 
    } 

    public class WebClient extends android.webkit.WebViewClient { 
    Context mActivity; 

    public WebClient(Context context){ 
     mActivity = context; 
    } 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 

     return false; 

    } 

    public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) { 
     view.setBackgroundColor(0); 
     view.loadUrl("file:///android_res/drawable/no_internet.png"); 
    } 

} 
+0

この参照をしようとするもう一つの方法:のhttp://stackoverflow.com/questions/10395292/android-webview-scalingを画像に合わせる – rafsanahmad007

答えて

0

ねえ、あなたがそれはあなたがちょうどあなたがonReceivedError上でURLロード高さと幅誘い込むを設定する必要が簡単です。

Display display = getWindowManager().getDefaultDisplay(); 
int width=display.getWidth(); 

String data="<html><head><title>Example</title><meta name=\"viewport\"\"content=\"width="+width+", initial-scale=0.65 \" /></head>"; 
data=data+"<body><center><img width=\""+width+"\" src=\""+url+"\" /></center></body></html>"; 
webView.loadData(data, "text/html", null); 

、あなたが問題で行わ:)

WebSettings settings = webView.getSettings(); 
settings.setUseWideViewPort(true); 
settings.setLoadWithOverviewMode(true);