WebView scalieren

  • Hallo zusammen, das Laden meiner Images per webview funktioniert prima.
    die View wird , wie gewollt im oberen Drittel meines App-screens angezeigt.


    Leider klappt das mit der Scalieren der Bilder nicht richtig.


    Bei Verwendung eines ImageView werden die Bilder genau im Screen plaziert.
    Bei der WebView lassen die Fotos sich in alle richtungen scrollen :(
    Hier der entsprechende Codeschnipsel:


    und



    auch meine Versuche mit
    wv.getSettings().setLoadWithOverviewMode(true);
    wv.getSettings().setUseWideViewPort(true);


    bringen nicht das gewünschte Ergebnis.


    Was mache ich falsch


    danke euch

  • In welchem Format sind den deine anzuzeigenden Bilder? Werden nur Bilder angezeigt? Evtl. CSS die negativ beinflussen?


    Alternativ kannst du natürlich auch selbst die Bilder über das Attribute "width" steuern. Hol dir dazu einfach die Displaygröße und füg sie an der Stelle einfach im Source ein:


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


    Ansonsten kannst du das auch via JS selbstständig machen. Dazu einfach das Attribute onload hinzufügen und deine Funktion dazu niederschreiben.


    bsp für Client Breite:


    PHP
    document.body.clientWidth


    Wenn du noch Probleme damit hast, zeig uns mal deinen kompletten Source "Webseiteninhalt sowie weitere Einstellungen des WebViews".


    Edit: Langsam musst du mir mal einen ausgeben xD

  • ich hab als Format JPG genutzt, Format kann ich aber frei wählen.
    Es ist auch ein reiner Link zum Foto, ohne HTML oder sonstwas drumrum.
    Welchen Code willst sehen?


    hier das onCreate der Activity

  • Also dein Foto skaliert Problemlos ins Sichtbare Feld (siehe deine Settings). Kann es ggf. sein das du etwas anderes möchtest und dein Bild komplett der Breite des Webviews anpassen möchtest und nicht nur einfach alles ins Sichtbare bringen möchtest?


    Wenn dem so ist, könntest du den initialScale des WebViews setzen. Dazu brauchst du aber die Bildbreite sowie die Breite des Displays.



    Alternativ setz doch einfach deine Bilder breite via CSS ;)

  • ideal wäre natürlich, den kompletten Platz zu nutzen, und das bei allen möglichen Auflösungen.


    sorry, hab vergessen zu sagen, dass ich das Foto was ich dir geschickt hab, nochmals halbiert habe,
    wg der begrenzten Dateigrösse als Anhang.


    Wie siehts denn bei dir aus, wenn du das Foto verdoppelst, also 700x438 ?


    Ich danke dir gewaltig


    Nachtrag:
    Bei mir ist auch das skalierte Foto mit 350 breite und 219 höhe in die Höhe zu scrollen :(

  • Also am Sinnigsten wäre hier wirklich den initialScale des WebViews zu setzen.


    Für dein Bild könntest du allerdings auch:


    webView.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);


    verwenden. Dann wird es komplett angezeigt. Achte bitte drauf, dass das Feld als deprecated makiert ist.

    PHP
    This field was deprecated in API level .
    This algorithm is now obsolete.
  • Dass das deprecated ist, ist dumm.
    Ich muss jetzt leider auf Montag verschieben.


    Besuch ist eingetroffen :)


    Noch schnell als Nachtrag:


    wv.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);


    FUNKTIONIERT !!! (bei einem Seitenverhältnis 4:1)
    Bis dahin erstmal danke


    Gruss KHH

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!