it-swarm.com.de

ImageView wird im Layout angezeigt, jedoch nicht auf dem tatsächlichen Gerät

Ich habe eine ImageView, die ich mit der vollen Breite des Geräts anzeigen möchte. Ich habe das folgendermaßen erkannt:

<ImageView
    Android:id="@+id/home_bar_newvault"
    Android:layout_width="wrap_content"
    Android:layout_height="40dp"
    Android:scaleType="centerCrop"
    Android:layout_alignParentBottom="true"
    Android:src="@drawable/home_bar" />

Die home_bar ist eine PNG-Bilddatei mit folgenden Abmessungen: 2399x254. Wenn ich das grafische Layout der Benutzeroberfläche anzeigen möchte, wird die Bildansicht am unteren Rand der Aktivität korrekt angezeigt. Wenn ich jedoch die Anwendung auf meinem Gerät starte, wird die Bildansicht überhaupt nicht angezeigt. 

19
Tim Kranen

In Ordnung, ich habe versucht, die Auflösung des Bildes zu ändern (das Bild in zwei Hälften zu schneiden und es 1000x130 zu machen). Ich denke, Android kann große Bilder nicht direkt rendern? Ich weiß nicht, wenn Sie mehr über das Thema wissen, zögern Sie bitte nicht zu antworten! Wie auch immer, das Skalieren des Bildes funktionierte.

15
Tim Kranen

Ich hatte das gleiche Problem, es wird nur auf der Registerkarte Design für Android Studio 2.2 angezeigt. 

Um dies zu erreichen, muss ich den zugewiesenen automatischen Schlüssel (per Drag/Drop ImageView) von app:srcCompat="@drawable/logo" in Android:src="@drawable/logo" auf der Registerkarte Text ändern, damit er auf dem Emulator und dem Gerät angezeigt wird, z

<ImageView
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:src="@drawable/logo"
    Android:layout_alignParentTop="true"
    Android:layout_centerHorizontal="true"
    Android:layout_marginTop="75dp"
    Android:id="@+id/logoImageView"
    Android:scaleType="fitXY"
    Android:scaleX="1.5"
    Android:scaleY="1.5" />
48
Woppi

sie können verwenden:

Android:background="@drawable/home_bar"

anstatt:

Android:src="@drawable/home_bar"
7
Gouda Elalfy

Verwenden Sie den drawable-nodpi-Ordner in res, wenn das Bild zu groß ist.

4
Francis

Ich hatte das gleiche Problem und war in der Lage, es mit folgenden zu lösen.

Mein Problem war, dass die Richtung des zeichnbaren Archivs in das zweite Feld scrCompact geschrieben wurde.

Ich habe in die Box kopiert und das Problem behoben.

enter image description here

Für mich war das Problem, dass ich benutzte

tools:src=...

eher, als

Android:src=...

Es wurde automatisch generiert und versucht, ein bereits vorhandenes Vorlagenbild zu verwenden.

0
Maik Thielen

Ich hatte ein Problem mit einem Samsung-Handy, auf dem mein Drawable nicht angezeigt wurde, aber es funktionierte gut mit einem anderen Telefon. Das Bild war nicht groß dimensioniert oder anderweitig anormal. 

Um dieses Problem zu lösen, lege ich mein Bildelement einfach in einen untergeordneten Ordner, anstatt es im Hauptordner zu haben. Egal von res/drawable bis res/drawable-mdpi hat für mich gearbeitet. Wenn Sie ein Bild für alles verwenden möchten, das keine bestimmte dpi hat, setzen Sie es in res/drawable-nodpi. Hier ist ein bisschen mehr über die dpi-Ordner.

0
ZooMagic

Keines der oben genannten hat den Trick getan, es war ein wirklich großes Bild, und diese Lösung wurde gefunden: In Ihrer Manifest-Datei

<application
        //this solve it for me.
        Android:hardwareAccelerated="false"
        // Add this if the previuos line didn't solve tge problem
        Android:largeHeap="true"
        Android:theme="@style/AppTheme">

Löse es für mich.

Hoffe es hilft jemandem.

0
Idan Magled