Distribute objects in a LinearLayout
我正在尝试在水平LinearLayout中排列两个按钮,以使它们均匀分布,但是同时,这些按钮不会在可用空间上伸展(它们之间只有空白)。
我正在尝试遵循我在此问题中发现的内容,尤其是安德鲁的评论...
我当前的布局看起来像这样。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:background="#ffffff" android:minHeight="?android:attr/listPreferredItemHeight"> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" > <Button android:id="@+id/db_export_cancel" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="center_horizontal" android:text="Cancel" /> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:orientation="horizontal" > <Button android:id="@+id/db_export_ok" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_gravity="center_horizontal" android:text="OK" /> </LinearLayout> </LinearLayout> |
两个LinearLayouts正确地使用了可用空间的每一半,但是按钮在每个按钮的左侧对齐。
将每个内部LinearLayout更改为具有垂直方向。 每个人都应注意其封闭的Button的水平重力。
每个按钮周围的那些LinearLayouts有什么意义? 只需在各个按钮上设置权重即可摆脱中间商。 然后,如果您想使按钮更小,则可以a)在按钮本身上添加一些左右填充,或b)在按钮的左侧和右侧添加两个间隔视图,每个视图的权重也为1 。