Wie kann ich die Breite von radio-buttons zu ändern, hinsichtlich der Display-Größe? (android)
Ich habe diese radio-buttons und Sie müssen android:width="X"
und android:height"X"
aber ich weiß nicht, wie Sie diese Eigenschaften so, dass Sie die Anpassung an eine andere Bildschirmgröße.
Hier ist der code, den ich verwende für meine buttons:
<RadioGroup android:layout_width="fill_parent"
android:layout_height="50px" android:orientation="horizontal"
android:checkedButton="@+id/first" android:id="@+id/states">
<RadioButton android:id="@+id/first"
android:background="@drawable/button_radio" android:width="50px"
android:height="50px" />
<RadioButton android:id="@+id/second"
android:background="@drawable/button_radio" android:width="50px"
android:height="50px" />
<RadioButton android:id="@+id/third"
android:background="@drawable/button_radio" android:width="50px"
android:height="50px" />
<RadioButton android:id="@+id/fourth"
android:background="@drawable/button_radio" android:width="50px"
android:height="50px" />
<RadioButton android:id="@+id/fifth"
android:background="@drawable/button_radio" android:width="50px"
android:height="50px" />
</RadioGroup>
Habe ich versucht, indem Sie den Radio-buttons in eine Zeile in der Tabelle, aber dann haben Sie nicht richtig funktionieren. Wenn ich auf eins, er hat ihn ausgesucht, aber nicht deaktivieren Sie es, wenn ich klickte anderen.
Habe ich versucht, anstelle der android:width
mit android:layout_width
aber dann zeigen Sie nicht.
Habe ich auch versucht, mit dip, aber dann sind die buttons nicht angezeigt.
Ich sollte auch hinzufügen, dass ich mit drawables statt der serienmäßigen radio-buttons. Ich weiß nicht, ob dies würde einen Unterschied machen, aber die drawables sind alle die gleiche Größe (50px x 50px).
Weiß jemand, wie kann ich die Höhe und Breite von diesen, so dass Sie passen sich an verschiedene Bildschirmgrößen an?
InformationsquelleAutor NotACleverMan | 2010-11-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Legen Sie die Höhe und Breite mit dp statt px. Siehe die Antwort zu diesem post für weitere Informationen auf die Geräte. Was ist der Unterschied zwischen "px", "dp", "dip" und "sp" auf Android?
Ich würde auch vorschlagen, Sie machen Sie sich vertraut mit android Dokumentation auf die Unterstützung mehrerer Bildschirme.
Okay, so habe ich einen moment zu Schüren einen schnellen Beispiel gezielt auf Android 1.5.
Finden Sie die Quelle hier.
Kurz gesagt, müssen Sie die folgenden Schritte aus:
Legen Sie Ihre Bilder in
res/drawable
. Sie sollten mindestens 4 Symbole: Gedrückt & Deaktiviert, Gedrückt & Geprüft, Nicht Gepresst & Deaktiviert, Nicht Gepresst & ÜberprüftErstellen Sie eine
selector
Art layout in res/drawable. Hier ist meins:Dann set-up Ihre
RadioGroup
etwa so:Habe ich angegeben dimension der 50dp als die dimension meiner drawables sind 50px x 50px. Merke auch, ich bin Einstellung
android:button
und nichtandroid:background
.Hier ist eine signierte APK-Projekt oben: Benutzerdefinierte RadioButton (Hinweis: es ist ausgerichtet auf die SDK-version 4, so dass Sie nicht verlangen, SD-und Telefon-Berechtigungen)
Dies sollte dem folgenden Ergebnis:
Hoffe, das hilft.
Wenn Ihre Schaltflächen sind aktuelle Bilder, dann erstellen Sie 3 verschiedene Versionen, und legen Sie Sie in den
res/drawable-ldpi
,res/drawable-mdpi
,res/drawable-hdpi
Ordner. Warum sind Sie der Angabe eines pixel-Größe?Ich mache diese für alle android-Versionen und im moment ist die drawables sind nur in den "drawable" Ordner. Ich führe es auf die 1,5-emulator auch. Ich bin nur unter Angabe der pixel-Größe, denn es ist der einzige Weg, werden die buttons angezeigt. Mit der Tabelle, die Sie zeigen, aber nicht deaktivieren, und jede andere Art, die Sie nur nicht zeigen, bis überhaupt. Nur ein großer schwarzer Raum, wo Sie sein sollten.
Ich bin mir nicht sicher, was dann die Lösung an dieser Stelle. Ich kann das nicht testen, dieses Recht jetzt. Die Tasten müssen in einer RadioGroup, jedoch, um ordnungsgemäß zu funktionieren. Kann es sein, dass Sie brauchen, um eine StateListDrawable. developer.android.com/reference/android/graphics/drawable/... Hier ist ein Beispiel für jemanden, der etwas ähnliches macht, aber etwas anders: heliodorj.blogspot.com/2009/04/...
Siehe meine edits oben für weitere Details.
InformationsquelleAutor Thomas
Ich würde vorschlagen, Sie versuchen, die folgenden mit Ihrem radioGroup :
Diese Weise alle Ihre radio-buttons belegen gleichen Speicherplatz. Darüber hinaus wird es ändern, wie pro die Display-Größe.
InformationsquelleAutor Ashish