以RelativeLayout为中心的textView

时间:2013-12-17 14:44:36

标签: android android-layout android-relativelayout

有人知道为什么以下代码不会将文本置于按钮中心

但第二个呢?

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center" >

    <Button
        android:id="@+id/gotItButton"
        android:layout_width="250dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:layout_marginTop="5dp"
        android:background="@drawable/btn_selector"
        android:padding="0dp" />

    <com.m.view.text.MyTextView
        android:id="@+id/gotItText"
        style="@style/textOnBg"
        android:layout_marginTop="25dp"
        android:text="Got it"
        android:textColor="#00bcfe"
        android:textSize="16dp"
        android:textStyle="italic" />
</RelativeLayout>

在父级中不是gravity,并且每个子级中的layout_gravity都是相同的

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center" >

        <Button
            android:id="@+id/gotItButton"
            android:layout_width="250dp"
            android:layout_height="50dp"
            android:layout_gravity="center"
            android:layout_marginTop="5dp"
            android:layout_centerInParent="true"
            android:background="@drawable/btn_selector"
            android:padding="0dp" />

        <com.m.view.text.MyTextView
            android:id="@+id/gotItText"
            style="@style/textOnBg"
            android:layout_marginTop="25dp"
            android:layout_centerInParent="true"
            android:text="Got it"
            android:textColor="#00bcfe"
            android:textSize="16dp"
            android:textStyle="italic" />
    </RelativeLayout>

1 个答案:

答案 0 :(得分:6)

gravity位于按钮内。 layout_gravity在外面(父母的中心)

所以,你在RelativeLayout中不需要引力,在Button中移动它。

并从按钮中移除layout_gravity,因为您使用centerInParent