如何将RelativeLayout放在RelativeLayout的底部?

时间:2010-08-16 11:38:37

标签: android android-linearlayout android-relativelayout

我有RelativeLayout,此布局有两个子项,一个是MapView,另一个是包含按钮的RelativeLayout

我希望它看起来像那样

但我的透明框(RelativeLayout)始终显示在地图的顶部。

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

  <com.google.android.maps.MapView
    android:id="@+id/mapView"/>

    <test.project.TransparentPanel 
      android:layout_width="fill_parent"
      android:layout_width="fill_parent">   

        <Button 
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="Click Me!"/>   

    </test.project.TransparentPanel>

</RelativeLayout>   

(我在代码中遗漏了一些东西)

2 个答案:

答案 0 :(得分:8)

尝试将alignParentBottom选项添加到透明面板。

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

  <com.google.android.maps.MapView 
    android:id="@+id/mapView"/>

  <test.project.TransparentPanel
    android:layout_width="fill_parent"
    android:layout_width="fill_parent"
    android:layout_alignParentBottom="true">

      <Button 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Click Me!"/>         

  </test.project.TransparentPanel>

</RelativeLayout> 

答案 1 :(得分:2)

正如Konstantin指出的那样,使用layout_alignParentBottom将按钮放在视图的底部。现在的问题是mapview还将自己伸展到父级的底部。因此,mapview将在按钮下“生成”,直到填充父级。

尝试以下方法。首先将按钮放在父视图的底部,然后在按钮上方对齐。

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

  <test.project.TransparentPanel
    android:id="@+id/button_area"
    android:layout_width="fill_parent"
    android:layout_width="fill_parent"
    android:layout_alignParentBottom="true">

      <Button 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Click Me!"/>         

  </test.project.TransparentPanel>

  <com.google.android.maps.MapView 
    android:id="@+id/mapView"
    layout_above="@id/button_area"/>

</RelativeLayout>