Frage

Wie kann ich verhindern, dass meine Bitmap automatisch in einer ImageView oder im Bildbutton skaliert wird, wenn die Ansicht oder die Schaltfläche mit "fill_parent" oder mit "Gewicht" gestreckt wird?

Dies wird beispielsweise nützlich sein, um eine Symbolleiste mit 4-Knopf-Symbolleiste oben auf dem Bildschirm zu erstellen, in dem die Schaltflächen gleichermaßen beabstandet sind, aber die Bilder in den Tasten werden immer wieder in der Struktur gestellt, wenn ich scaletype = "center" verwende, was verhindern sollte Skalieren nach dem Dokument, aber es tut es nicht.

Jeder Einblick wird geschätzt!

Vielen Dank,

War es hilfreich?

Lösung

Ich habe festgestellt, dass bei Verwendung von Android: Hintergrund das Bild, das Sie dort verwenden, automatisch auf die Größe der Ansicht skaliert.

Ich habe versucht, das Bild in der Ansicht zu verwenden. Das Bild hat nicht skaliert, aber ich konnte das Bild nicht in Bezug auf die Größe der Ansicht in den Mittelpunkt bringen.

Also habe ich versucht, den gesamten Knopf zu erstellen. Es ist ein eigenes relatives Layout und das habe ich verwendet:

<RelativeLayout android:id="@+id/RelativeLayout01" 
                android:layout_height="fill_parent" 
                android:layout_width="fill_parent">
                <ImageButton android:id="@+id/ImageButton01"    
                             android:layout_height="fill_parent"
                             android:layout_width="fill_parent"></ImageButton>
                <ImageView android:id="@+id/ImageView01"
                           android:layout_width="wrap_content"
                           android:layout_height="wrap_content" 
                           android:background="@drawable/cardback1" 
                           android:layout_centerInParent="true"></ImageView>
</RelativeLayout>

Das ImageButton befindet sich im Hintergrund und wird immer die gleiche Größe wie das Layout haben. Das ImageView bleibt jedoch immer im RelATelayout zentriert und skaliert nicht. Auf diese Weise kann der RelATivalout selbst wachsen und sich bewegen und das Bild oben auf der Taste bleibt immer gleich groß, aber der Knopf wird wachsen. Das Bild schrumpft jedoch, wenn das Layout kleiner wird als das Bild selbst.

Ich denke, das haben Sie gesucht. Es mag einen besseren Weg geben, dies zu tun, aber das ist alles, was ich jetzt finden kann.

Andere Tipps

Ändern Sie einfach Ihren Zeichnung und wenden Sie einen größeren transparenten Hintergrund an. Sagen Sie, mein Zeichnung in HDPI ist 41*48 PX Icon.png. Ich habe ein neues Bild 60*60 PX mit einem transparenten Hintergrund erstellt, das vorherige Symbol kopieren und unter demselben Namen speichern. Auf diese Weise müssen Sie Ihre Layouts nicht berühren.

Dann können Sie die Schaltflächenzone größer überprüfen, wenn Sie a anwenden nicht transparent Android: Hintergrund:

<ImageButton android:id="@+id/widget_open"
android:src="@drawable/icon_widget_arrow_up"
android:background="#ff777777"
android:layout_height="wrap_content"
android:layout_width="wrap_content"></ImageButton>

Wenden Sie das vorherige und neue Zeichnen auf Android: Src Sie sollten im Bildbuttonbereich deutlich sehen.

Übrigens leite ich die App im Kompatibilitätsmodus aus.

Wenn das Bild skaliert ist, stellen Sie sicher, dass Sie Ihre App nicht im Kompatibilitätsmodus ausführen (z. B. wenn Sie auf Android 1.5/1.6 abzielen, ohne mehrere Dichten zu unterstützen und die App auf Android 2.0 auszuführen.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top