Мастер как макет в Android - PullRequest
0 голосов
/ 02 марта 2011

Я хочу создать макет, подобный мастеру, который должен выглядеть следующим образом: * вверху должен быть какой-то заголовок текущего диалога * внизу должна быть панель навигации с кнопками для следующих / предыдущих и различных операций.Эта строка всегда (!) Должна находиться в самом низу экрана.* в центре должен быть список (должен использовать все оставшееся пространство, кроме строки заголовка и панели навигации, описанной выше)

Моя первая попытка опубликована ниже.Я использовал framelayout, однако мне сказали, что это плохая идея.Проблема, с которой я столкнулся, заключается в том, что последняя строка моего списка находится ниже панели с кнопками внизу экрана.Есть ли у вас какие-либо предложения о том, как я могу решить мою проблему?

Спасибо

Вот мой неработающий проект:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">

<LinearLayout android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:orientation="vertical" >

    <LinearLayout android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:orientation="horizontal" style="@android:style/ButtonBar">

        <ImageView android:src="@drawable/person"
            android:layout_width="wrap_content" android:layout_height="wrap_content" />

        <TextView android:text="@string/personstring"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:textStyle="bold" android:textAppearance="?android:attr/textAppearanceLarge" />

    </LinearLayout>


    <ListView android:visibility="visible" android:id="@android:id/list"
        android:layout_width="fill_parent" android:layout_height="fill_parent" />


</LinearLayout>
<LinearLayout android:id="@+id/footer"
        android:layout_width="fill_parent" android:layout_height="wrap_content"
        android:orientation="horizontal" android:layout_gravity="bottom|center"
        android:layout_alignParentBottom="true" style="@android:style/ButtonBar">

        <ImageButton android:id="@+id/loacreation.previousButton"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:layout_weight="1" android:src="@drawable/buttonarrowleft" />

        <ImageButton android:id="@+id/loacreation.nextButton"
            android:layout_width="wrap_content" android:layout_height="wrap_content"
            android:layout_weight="1" android:src="@drawable/buttonarrowright" />
    </LinearLayout>


</FrameLayout>

1 Ответ

1 голос
/ 02 марта 2011

Используйте RelativeLayout в качестве внешнего контейнера, и LinearLayout, содержащий ваши кнопки, может иметь android: layout_alignParentBottom = "true".

...