141 Stimmen

Button auf der rechten Seite in horizontaler LinearLayout ausrichten

Wenn Sie sich das angehängte Bild ansehen. Ich möchte, dass meine Schaltfläche rechts ausgerichtet ist, aber aus irgendeinem Grund funktioniert es nicht mit 'gravity:right'...

Abbrechen Hinzufügen

Hier ist mein Code für dieses Layout:

Warum funktioniert es nicht?!

166voto

TWiStErRob Punkte 41031

Eine einzige Lösung mit LinearLayout. Es wird nur eine einfache Leeransicht hinzugefügt:
(Scheinbar hat das noch niemand erwähnt, nur kompliziertere Lösungen mit mehreren Layouts.)

Bitte beachten Sie die "hervorgehobene" Ansicht. Es wurde nichts anderes geändert. Die Höhe=0 stellt sicher, dass sie nicht sichtbar ist. Die Breite=0, da die Breite vom LinearLayout basierend auf dem Gewicht=1 bestimmt wird. Das bedeutet, dass die Zwischenansicht sich so weit wie möglich in die Richtung (Orientierung) des LinearLayout erstreckt.

Beachten Sie, dass Sie android.widget.Space oder android.support.v4.widget.Space anstelle von View verwenden sollten, wenn Ihr API-Level und/oder Abhängigkeiten dies zulassen. Space erledigt die Aufgabe auf eine kostengünstigere Weise, weil es nur misst und nichts versucht zu zeichnen wie View es tut; außerdem ist es ausdrucksstärker und vermittelt die Absicht klarer.

144voto

Dipak Keshariya Punkte 22039

Verwenden Sie den folgenden Code dafür

44voto

nicolas asinovich Punkte 2663

Echte Lösung für diesen Fall:

android:layout_weight="1" für TextView und Ihr Button bewegt sich nach rechts!

30voto

BobbyD17 Punkte 495

Ich weiß, dass diese Frage vor einiger Zeit gestellt wurde, aber ich habe das schon einmal gemacht und es ermöglicht eine bessere Kontrolle beim Ausrichten von Elementen. Wenn Sie es wie ein Webprogramm betrachten, hilft es. Sie müssen einfach ein weiteres LinearLayout verschachteln, das Ihren Button darin enthält. Dann können Sie die Ausrichtung des Layouts des Buttons ändern und ihn nach rechts verschieben, während das TextView immer noch links steht.

Versuchen Sie es mit diesem Code:

Sie müssen möglicherweise mit dem Padding im verschachtelten Layout spielen, damit es sich so verhält, wie Sie es möchten.

11voto

NagarjunaReddy Punkte 8581

Versuchen Sie dieses Mal

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X