2010-08-16 2 views
2

У меня есть RelativeLayout, и этот макет имеет два дочерних элемента: один - MapView, а другой - RelativeLayout, содержащий кнопку.Как разместить RelativeLayout в нижней части 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> 

(я оставил некоторые вещи в коде)

ответ

6

Попробуйте добавить опцию 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> 
2

Как Константин отметил использование 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>