Я пытаюсь отобразить активность Android с:
- тема диалога;
- заголовок, зафиксированный в верхней части диалогового окна;
- панель кнопок, закрепленная в нижней части диалога;
- вид прокрутки в середине.
Макет, который я написал, удовлетворяет этим критериям, за исключением того, что диалоговое окно всегда заполняет весь экран (см. Вертикальный снимок экрана внизу).
Это мой макет:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<TextView android:id="@+id/header"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_marginLeft="10dp" android:layout_marginRight="10dp"
android:layout_marginTop="10dp" android:layout_marginBottom="10dp"
android:gravity="center_vertical"
android:textSize="18dip" android:textColor="#ffffff"
android:text="Sample Layout" />
<LinearLayout android:id="@+id/controls" android:orientation="horizontal"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
style="@android:style/ButtonBar">
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:text="Yes" />
<Button android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:text="No" />
</LinearLayout>
<ScrollView android:id="@+id/test" android:layout_below="@id/header"
android:layout_above="@id/controls"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_marginBottom="5dp" android:layout_marginLeft="5dp"
android:layout_marginRight="5dp">
<TextView android:layout_width="fill_parent" android:layout_height="wrap_content"
android:text="Lorem ipsum dolor sit amet, consectetur
adipiscing elit. Integer dui odio, convallis vitae suscipit eu,
tincidunt non mi. Vestibulum faucibus pretium purus vel adipiscing.
Morbi mattis molestie risus vitae vehicula. [...]" />
</ScrollView>
</RelativeLayout>
Кроме того, задание стилизовано с @android:style/Theme.Dialog
и android:windowNoTitle
.
Я не уверен, что понимаю, почему этот макет расширяется, чтобы заполнить весь экран. Ни в одном из представлений высота макета не установлена на fill_parent
; родительский макет также не установлен на fill_parent
.
Кто-нибудь знает, возможно ли то, что я хочу сделать, и если да, то как это сделать?
Мой текущий макет в горизонтальном режиме
Мой текущий макет в вертикальном режиме