RelativeLayout中設(shè)置居中的方法有兩個舟误,一個是android:gravity="center_horizontal"還有一個是 android:layout_centerHorizontal="true"
那么他們有啥區(qū)別呢携冤?
首先:android:gravity="center_horizontal"
<!--對于自身的內(nèi)容灌曙,是水平居中的 -->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="75dp"
android:gravity="center_horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="賬號:12345678" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="密碼:1234" />
</RelativeLayout>
效果:圖片.png
然后是:android:layout_centerHorizontal="true"
<!--水平居中于父視圖 -->
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="75dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="賬號:12345678" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="密碼:1234" />
</RelativeLayout>
效果:圖片.png
所以得出結(jié)論:
1.RelativeLayout的實(shí)際內(nèi)容的寬高根據(jù)所有子視圖中的最大寬高所決定;
2.對于android:gravity="center_horizontal"奸攻,對于自身的內(nèi)容是水平居中的,但并不會設(shè)置其中所有子視圖的對齊值;
3.對于android:layout_centerHorizontal="true"静稻,則只是針對子視圖自身水平居中于父視圖;
4.例子中顯然android:gravity="center_horizontal"的效果比較好货岭,因?yàn)榧瓤梢宰龅阶右晥D居中扣汪,又可以讓子視圖對齊砾医;
5.用哪個方法根據(jù)實(shí)際情況而定。