Android RelativeLayout - PullRequest
       20

Android RelativeLayout

0 голосов
/ 09 сентября 2011

можно ли использовать RelativeLayout, чтобы иметь одну область сверху, которая использует все доступное пространство (которое должно динамически заполнять несколько видов), и кнопки, которые должны находиться в нижней части экрана?

Я попытался выполнить следующее, но без усилий:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/relativeLayout1"
android:layout_width="fill_parent" 
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">

<FrameLayout 
    android:id="@+id/topFrame"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true" 
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_margin="6dp">

    <TextView
        android:text="blabla"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent" />

</FrameLayout>

<Button android:id="@+id/button1" 
    android:text="Button 1" 
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:layout_below="@id/topFrame"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_margin="6dp" />

<Button android:id="@+id/button2" 
    android:text="Button 2" 
    android:layout_height="wrap_content"
    android:layout_width="fill_parent"
    android:layout_below="@id/button1"
    android:layout_alignParentBottom="true" 
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_margin="6dp" />

. При таком решении кнопка заполняет пространство, а не FrameLayout.

Ответы [ 3 ]

0 голосов
/ 09 сентября 2011

В FrameLayout измените android:layout_height="wrap_content" на android:layout_height="fill_parent", затем включите android:layout_above="@+id/button1".Он должен заставить ForceLayout заполнить пространство и всегда находиться над первой кнопкой.

0 голосов
/ 14 сентября 2011

Попробуйте это.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:id="@+id/RelativeLayout1"
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">


<Button android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/button1" 
android:text="Button" 
android:layout_alignParentBottom="true" 
android:layout_alignParentRight="true" 
android:layout_alignParentLeft="true"/>

<Button android:layout_height="wrap_content" 
android:id="@+id/button2" 
android:text="Button" 
android:layout_above="@+id/button1" 
android:layout_width="fill_parent" 
android:layout_alignParentLeft="true"/>

<FrameLayout android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/frameLayout1" 
android:layout_above="@+id/button2" 
android:layout_alignParentTop="true" 
android:layout_alignParentRight="true" 
android:layout_alignParentLeft="true">

<TextView android:layout_height="wrap_content" 
android:text="TextView"         
android:layout_width="fill_parent" 
android:id="@+id/textView1">
</TextView>


</FrameLayout>

</RelativeLayout>

Извините, если что-то пропустил.

0 голосов
/ 09 сентября 2011

Попробуйте:

<RelativeLayout......>
<FrameLayout 
android:id="@+id/topFrame"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" 
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_margin="6dp">

<TextView
    android:text="blabla"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" />

</FrameLayout>  
<RelativeLayout 
    android:id="@+id/InnerRelativeLayout"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true" >

    <Button 
       .....
    </Button>

    <Button 
       .....
    </Button>

</RelativeLayout>
</RelativeLayout>
...