为什么Android RelativeLayout中的一个按钮会越过另一个按钮?

时间:2013-03-24 20:48:03

标签: android android-layout

我目前有两个并排按钮,但它看起来好像是我希望它们的格式,但左按钮重叠并占据整个宽度,右按钮完全按照我的要求做。按下时,左按钮看起来好像都按下了两个按钮,因为它占据了整个宽度。

<Button
        android:id="@+id/set_alarm"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/time_picker"
        android:layout_alignParentLeft="true"
        android:text="@string/set_text"
        android:textSize="27sp" />

    <Button
        android:id="@+id/cancel_button"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_below="@+id/time_picker"
        android:layout_alignParentRight="true"
        android:text="@string/cancel_alarm_text"
        android:textSize="27sp"
        android:onClick="cancelAlarm" />

1 个答案:

答案 0 :(得分:3)

尝试添加:android:layout_toRightOf="@+id/set_alarm"属性,如下所示:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <Button
        android:id="@+id/set_alarm"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/time_picker"
        android:text="@string/set_text"
        android:textSize="13sp" />

<Button
    android:id="@+id/cancel_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/time_picker"
    android:layout_toRightOf="@+id/set_alarm"
    android:onClick="cancelAlarm"
    android:text="@string/cancel_alarm_text"
    android:textSize="13sp" />

</RelativeLayout>

他们重叠的原因是因为你已经指示他们低于某个布局,但是如果你不告诉他们并且彼此重叠,他们就不会彼此了解。