在线性布局LnearLayout中,如果指定了水平的排列方式,那么子控件就无法指定水平方向上的gravity。比如:以下代码
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button1"
android:layout_gravity="left"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button2"
android:layout_gravity="center"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button3"
android:layout_gravity="right"/>
</LinearLayout>
创建了一个简单的线性布局,里面有3个按钮,线性布局默认的是水平方向排列,因此指定了子控件在容器中的位置时如果是水平方向则无效。如图所示