我需要像LinearLayout一样将可变数量的视图(可能只是一个)放在一起。但我希望整个安排是中心对齐的。观点应该是彼此相邻的。但是整个排列应该与屏幕的左右边缘或包含父节点等距。我怎么能做到这一点?
答案 0 :(得分:19)
您必须将视图包装在LinearLayout
内,将线性布局包含在其他内容中:
<LinearLayout
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_gravity="center_horizontal">
<View/>
<View/>
etc...
</LinearLayout>
</LinearLayout>
确保所有观看次数都使用android:layout_width="wrap_content"
。如果您正在使用RelativeLayout
,那么它将是:
<RelativeLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_centerHorizontal="true">
<View/>
<View/>
<View/>
</LinearLayout>
</RelativeLayout>
答案 1 :(得分:9)
你试过吗
android:gravity="center"
答案 2 :(得分:2)
这将为你做到
机器人:layout_gravity = “CENTER_HORIZONTAL”
此外,您还需要考虑权重属性,以确保此布局元素优先于其他布局元素。
http://developer.android.com/reference/android/widget/LinearLayout.LayoutParams.html
要将所有内容组合在一起,您可以使用框架布局或相对布局。