0

我想编写一个带有 GUI 的小型 Android 应用程序,该应用程序应在(纵向)屏幕顶部显示图像,直接在可能包含一些信息文本(或只是空白/空)的 TextView 下方,并在底部屏幕一个按钮。因此,在(空)Textview(在顶部图像下方)和按钮之间应该是“最大”空白空间,具体取决于设备的屏幕尺寸。

因此,换句话说:图像和 TextView 组应该浮动在屏幕顶部,底部应该浮动在屏幕底部,中间有一个动态的空白空间。

所以我最终得到了这个布局 XML:

<?xml version="1.0" encoding="utf-8"?>

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

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

    <ImageView
        android:id="@+id/curr_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal|top"
        android:layout_margin="6dip" />

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

</LinearLayout>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom"
    android:orientation="vertical" >

    <Button
        android:id="@+id/button"
        android:text="@string/rate_button_text"
        android:layout_width="fill_parent"
        android:layout_height="60dip"
        android:layout_gravity="center_horizontal|bottom"
        android:layout_margin="6dip" />

</LinearLayout>

</LinearLayout>

但是,使用这种布局,所有内容都浮动在屏幕顶部,按钮不会呈现到屏幕底部,如上所述。

有什么想法我在这里做错了吗?在此先感谢您的帮助!

4

1 回答 1

1

尝试将底部所需的布局更改为:

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

另请注意,您只需要这个:

xmlns:android="http://schemas.android.com/apk/res/android"

在 xml 文件的第一项中。您应该从所有布局中删除它,文件中的第一个布局除外。

于 2012-06-25T21:41:42.580 回答