Zentrieren Sie eine Schaltfläche in einem linearen Layout
Lesezeit: 4 Minuten
der Mann im Koffer
Ich verwende ein lineares Layout, um einen ziemlich hellen Anfangsbildschirm anzuzeigen. Es hat 1 Taste, die sowohl horizontal als auch vertikal auf dem Bildschirm zentriert werden soll. Aber egal, was ich versuche zu tun, die Schaltfläche wird oben mittig ausgerichtet. Ich habe das XML unten eingefügt, kann mich jemand in die richtige Richtung weisen?
Was es für mich in einem LinearLayout mit horizontaler Ausrichtung behoben hat, war das Festlegen layout_width zu “wrap_content”. Anschließend die layout_gravity tat, was es tun sollte!
– Irgendwer irgendwo
28. November 2012 um 0:53 Uhr
Wenn Sie unbedingt LinearLayout verwenden müssen, sollte dies meiner Meinung nach funktionieren: stackoverflow.com/questions/18051472/…
LinearLayout ist einfacher und leichter im Vergleich zu RelativeLayout, sollte etwas schneller sein.
– SurlyDre
15. November 2013 um 3:22 Uhr
Ich habe layout_gravity anstelle von Gravity verwendet. Der Wechsel zu android:gravity=”center” hat dies für mich behoben. Anfängerfehler.
– ackushiw
20. Dezember 2015 um 1:39 Uhr
@ackushiw war auch mein Problem!
– Deny
11. Februar 2017 um 11:57 Uhr
Zumindest für mich hat das Attribut android:gravity=”center” LinearLayout den Zweck erfüllt. Danke, Bro!
– die dreifackel
27. April 2019 um 17:16 Uhr
David Webb
Wenn Sie ein Element in der Mitte des Bildschirms zentrieren möchten, verwenden Sie kein a LinearLayout da diese dazu gedacht sind, mehrere Elemente hintereinander anzuzeigen.
Es gibt Fälle, in denen Sie ein LinearLayout verwenden und den Inhalt zentrieren müssen. Dies sollte nicht die akzeptierte Antwort sein. Es wäre besser vorzuschlagen, wenn möglich ein RelativeLayout zu verwenden, und wenn nicht wie in einem LinearLayout zentrieren.
– SteveBot
18. März 2015 um 0:16 Uhr
Ganz zu schweigen von der Tatsache, dass ein RelativeLayout aufgrund der Art und Weise, wie seine Abmessungen gemessen werden müssen, viel laufzeitintensiver ist, während ein LinearLayout super unkompliziert und viel effizienter ist.
– Trevor Hart
14. Juli 2017 um 19:39 Uhr
Rui
Haben Sie versucht, zu definieren android:gravity="center_vertical|center_horizontal" innerhalb des Layouts und der Einstellung android:layout_weight="1" im bild?
Ich mag diese Option, mit der ich mi LinearLayout behalten kann! (Ich musste nicht einstellen android:weight="1" in der Schaltfläche, um es zu zentrieren.)
– Sebastian
2. Juli 2011 um 10:47 Uhr
android:gravity funktioniert bei mir nicht in einem horizontalen LinearLayout, aber android:layout_gravity funktioniert.
– jfritz42
13. März 2012 um 16:27 Uhr
Eine häufig verwendete Methode, die mit linearem Layout funktioniert, besteht darin, eine Eigenschaft für die Bildschaltfläche festzulegen
android:layout_gravity="center"
Sie können jedes Objekt im linearen Layout linksbündig, zentriert oder rechtsbündig ausrichten. Beachten Sie, dass die obige Zeile genau die gleiche ist wie
Was es für mich in einem LinearLayout mit horizontaler Ausrichtung behoben hat, war das Festlegen
layout_width
zu “wrap_content”. Anschließend dielayout_gravity
tat, was es tun sollte!– Irgendwer irgendwo
28. November 2012 um 0:53 Uhr
Wenn Sie unbedingt LinearLayout verwenden müssen, sollte dies meiner Meinung nach funktionieren: stackoverflow.com/questions/18051472/…
– Antonio
26. Mai 2015 um 15:11 Uhr