无法在RelativeLayout中使IgnoreGravity工作

时间:2010-09-20 04:37:51

标签: android xml layout button relative

我有两个按钮。我希望在应用程序的顶部中心对齐一个。我想让另一个按钮忽略重力设置并转到我说的位置。我该怎么做?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/relative_layout"
    android:layout_width="fill_parent" 
    android:gravity="center_horizontal"
    android:layout_height="fill_parent" >
    <Button
        android:id="@+id/the_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Centered Button"
        android:layout_alignTop="@id/relative_layout" />

    <Button
        android:id="@+id/the_button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Random Button"
        android:ignoreGravity="@id/relative_layout" />

 </RelativeLayout>

1 个答案:

答案 0 :(得分:2)

不要使用RelativeLayout的gravity属性,RelativeLayout中的元素可以使用其他属性进行定位。试试这个:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relative_layout"
android:layout_width="fill_parent" 
android:layout_height="fill_parent" >
    <Button
    android:id="@+id/the_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Centered Button"
    android:layout_centerHorizontal="true" />
    <Button
    android:id="@+id/the_button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Random Button"/>
</RelativeLayout>

有关使用RelativeLayout的详情,请参阅RelativeLayout tutorialRelativeLayout.LayoutParams docs