1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Android Picture Object in ImageView anzeigen

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von Javacode, 04.05.2011.

  1. Javacode, 04.05.2011 #1
    Javacode

    Javacode Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    29.03.2011
    Hallo Liebe Androidler :).

    Ich hab ein kleines Problem das ich einfach ncht lösen kann.
    Vielleicht hat ja jemand eine Lösung parat.

    Folgendes: Ich möchte ein Screenshot von einer WebView machen und diesen dann in einer ImageView anzeigen.

    Mein Code im Moment:

    WebView mWebView = new WebView(this);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.loadUrl("http://www.google.de");

    Picture picture = mWebView.capturePicture();
    Bitmap b = Bitmap.createBitmap( picture.getWidth(),
    picture.getHeight(), Bitmap.Config.ARGB_8888);
    Canvas c = new Canvas( b );
    picture.draw( c );

    ImageView imgv= (ImageView) findViewById(R.id.webView1);
    imgv.setDrawingCacheEnabled(true);
    imgv.draw(c);
    Paint paint= new Paint();
    c.drawBitmap(b, 0, 0, paint);


    Dieser Funktioniert leider nicht so wie erhofft, gibt immer eine Exception


    Danke schon mal im Voraus.


    Grüße,
    Javacode
     
  2. swordi, 04.05.2011 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    wenn die exception schon hast, warum kopierst sie nicht einfach hier rein?
     
  3. Javacode, 04.05.2011 #3
    Javacode

    Javacode Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    29.03.2011
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): FATAL EXCEPTION: main
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): java.lang.RuntimeException: Unable to start activity ComponentInfo{android.app/android.app.mediaAItemView}: java.lang.IllegalArgumentException: width and height must be > 0
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2787)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2803)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.ActivityThread.access$2300(ActivityThread.java:135)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2136)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.os.Handler.dispatchMessage(Handler.java:99)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.os.Looper.loop(Looper.java:144)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.ActivityThread.main(ActivityThread.java:4937)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at java.lang.reflect.Method.invokeNative(Native Method)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at java.lang.reflect.Method.invoke(Method.java:521)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at dalvik.system.NativeStart.main(Native Method)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): Caused by: java.lang.IllegalArgumentException: width and height must be > 0
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.graphics.Bitmap.nativeCreate(Native Method)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.graphics.Bitmap.createBitmap(Bitmap.java:574)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.mediaAItemView.onCreate(mediaAItemView.java:133)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1069)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2751)
    05-04 10:54:26.333: ERROR/AndroidRuntime(11913): ... 11 more
     
  4. swordi, 04.05.2011 #4
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    ja und da stehts ja

    width und height müssen größer als 0 sein
     
  5. Javacode, 04.05.2011 #5
    Javacode

    Javacode Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    29.03.2011
    Ja, das hab ich auch gesehen.

    Hast du eine andere Möglichkeit die Webview zu screenen???
     
  6. Thyrion, 04.05.2011 #6
    Thyrion

    Thyrion Ehrenmitglied

    Beiträge:
    11,845
    Erhaltene Danke:
    2,450
    Registriert seit:
    21.07.2009
    Phone:
    Nexus 5X
    Nur so ein Gedanke: Ist der WebView an der Stelle direkt nach dem Aufruf der Methode loadUrl() schon fertig mit laden und rendern der Seite?
     
  7. Javacode, 04.05.2011 #7
    Javacode

    Javacode Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    29.03.2011
    möglich ist es schon, aber genau kann ich das nicht sagen. Feststellung als ich die webview drin hatte hats direkt nachdem ich die activity gestartet habe angezeigt also ist die lade dauer nur eine sache von ms.
     
  8. Thyrion, 04.05.2011 #8
    Thyrion

    Thyrion Ehrenmitglied

    Beiträge:
    11,845
    Erhaltene Danke:
    2,450
    Registriert seit:
    21.07.2009
    Phone:
    Nexus 5X
  9. Javacode, 04.05.2011 #9
    Javacode

    Javacode Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    29.03.2011
    erstmal Danke für die Hilfe. Das Problem das ganze soll dynamisch bleiben, der Gedanke war das Bild bei laden zu generieren ohne dem Kunden sein Speicherplatz zu Benutzen :). Den Link hatte ich auch schon durchforstet :)
     

Diese Seite empfehlen