0

相対レイアウトを使用しようとしましたが、ヘッダーがテキストの前になります。だから、すべてが間違った方向に進んでいました。私のアプリ画面は次のようになります。 画像

フッターも追加したいのですが、試してみるたびに失敗します。私のxmlレイアウトでは、すべての幅と高さが問題ないことを確信しています。

これが私のxmlです:

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

    <LinearLayout
        android:id="@+id/header"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

        <TextView
            android:id="@+id/item1"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".25"
            android:height="30dip"
            android:text="@string/item1" />

        <TextView
            android:id="@+id/item2"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".25"
            android:height="30dip"
            android:text="@string/item2" />

        <TextView
            android:id="@+id/item3"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".25"
            android:height="30dip"
            android:text="@string/item3" />

        <TextView
            android:id="@+id/item4"
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight=".25"
            android:height="30dip"
            android:text="@string/item4" />
    </LinearLayout>

    <!-- List Divider -->

    <View
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="?android:attr/listDivider" />

    <!-- ListView (grid_items) -->

    <LinearLayout
        android:id="@+id/layout"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" >

        <ListView
            android:id="@+id/listview"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" >
         </ListView>

    </LinearLayout>

</LinearLayout>

何か提案をお願いします。相対的なレイアウトは素晴らしいアイデアだと思いますが、私はまだそれについてあまり知りません。

4

1 に答える 1

1

1/'main'にRelativeLayoutを使用します。

2 /属性android:layout_alignParentTop="true"を'header'に追加します。

3 /id'layout'のLinearLayoutを削除します。これは必要ありません。

4/XMLの最後にフッターを追加します。IDを指定するときは、@+idではなく@idを使用してください。属性android:layout_alignParentBottom="true"を指定します。

5/次の属性をListViewに追加します。

android:layout_below="@id/header"
android:layout_above="@+id/the_id_you_give_the_footer"
于 2012-10-07T12:11:01.263 に答える