11 Stimmen

Wie man Breite und Höhe eines Webviews in Android erhält

Ich möchte die Breite und die Höhe des WebView . Ich habe bereits versucht, es mit:

webView.getWidth();
webView.getHeight();

aber das Ergebnisprotokoll zeigt sie immer als 0 an.

0voto

Naveen Kumar Punkte 981

Ich hoffe, meine Antwort hilft jemandem.

Wenn Sie die Höhe der webview nachdem der Inhalt geladen wurde, könnte dies hilfreich sein.

ViewTreeObserver viewTreeObserver  = mWebView.getViewTreeObserver();
viewTreeObserver.addOnPreDrawListener(new OnPreDrawListener() {
 @Override
 public boolean onPreDraw() {                                
     int height = mWebView.getMeasuredHeight();
        if( height != 0 ){
      Toast.makeText(getActivity(),"height:"+height,Toast.LENGTH_SHORT).show();
                             mWebView.getViewTreeObserver().removeOnPreDrawListener(this);
                       }
                       return false;
               }
       });

0voto

fahad_sust Punkte 506

Wenn Sie die ursprüngliche Höhe nach dem Laden des Inhalts erhalten möchten, können Sie den folgenden Code verwenden. Obwohl der Code veraltet ist, funktioniert er dennoch perfekt.

webview.setPictureListener(new WebView.PictureListener() {
        @Override
        public void onNewPicture(WebView webView, @Nullable Picture picture) {
            int height = webview.getContentHeight();
            int height1 = webview.getMeasuredHeight();
            int height2 = webview.getHeight();
        }
    });

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X