LinearLayout中的gravity是子布局中的内容的位置的设置;layout_gravity是自己的位置的设置.
比如:
<LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:background="@color/color_018c" android:orientation="horizontal"> <RelativeLayout android:gravity="right|center_vertical" android:layout_weight="1" android:layout_marginRight="15dp" android:layout_width="0dp" android:layout_height="match_parent"> <TextView android:id="@+id/tv_hot" android:layout_centerHorizontal="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="热门" android:textColor="@color/color_ffff" android:textSize="16sp" /> <ImageView android:layout_below="@+id/tv_hot" android:layout_centerHorizontal="true" android:id="@+id/img_hot_bo" android:layout_marginTop="7dp" android:src="@mipmap/choiced" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </RelativeLayout> <RelativeLayout android:gravity="left|center_vertical" android:layout_weight="1" android:layout_marginLeft="15dp" android:layout_width="0dp" android:layout_height="match_parent"> <TextView android:id="@+id/tv_att" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="关注" android:textColor="@color/color_dada" android:layout_centerHorizontal="true" android:textSize="16sp" /> <ImageView android:visibility="invisible" android:layout_below="@+id/tv_att" android:layout_centerHorizontal="true" android:id="@+id/img_att_bo" android:layout_marginTop="7dp" android:src="@mipmap/choiced" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </RelativeLayout> </LinearLayout>
结构是这样子(手动滑稽,as的design没有预览,心塞心塞)
如果是这样的
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:gravity="center" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" android:text="热门" android:textColor="@color/color_ffff" android:textSize="16sp" /> <TextView android:gravity="center" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" android:text="热门" android:textColor="@color/color_ffff" android:textSize="16sp" /> </LinearLayout>
就会是这样子
去掉权重给出固定宽度的textView,就会是这样子
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:gravity="center" android:layout_width="100dp" android:layout_height="wrap_content" android:text="热门" android:textColor="@color/color_ffff" android:textSize="16sp" /> <TextView android:gravity="center" android:layout_width="100dp" android:layout_height="wrap_content" android:text="热门" android:textColor="@color/color_ffff" android:textSize="16sp" /> </LinearLayout>