1

LinearLayout (vertical) があり、次の順序で 3 つの要素を含める必要があります: textview、listview、および button。リストビューは非常に高くなる可能性があるため、3 つの要素をすべて表示したままにするために、3 つの要素をそれぞれ別のレイアウト内に配置しました。したがって、私の構造は次のようになります。

linear layout (vertical)
  linear layout (horizontal)
    textview
  linear layout (vertial)   *
    listview
  relative layout
    button

それを機能させるために、リストビュー (*) のみを含む垂直方向の線形レイアウトに固定の高さを設定しましたが、より大きなデバイスでは多くの空きスペースがあるため、これは悪い選択であることがわかっています。どうすれば修正できますか?

ありがとう

4

3 に答える 3

0

この方法でレイアウトを実装します。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/mTextView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:gravity="center"
        android:padding="10dp"
        android:text="Header Text" />

    <ListView
        android:id="@+id/mListView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/mButton"
        android:layout_below="@+id/mTextView" >
    </ListView>

    <Button
        android:id="@+id/mButton"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Button1" />

</RelativeLayout>
于 2013-11-08T19:48:54.623 に答える
0

LinearLayout(*) のユーザー パーセンテージ値。したがって、親の高さのパーセンテージを占めます。

残りのスペースを占有する場合は、attribute: を追加しますandroid:layout_weight:1

于 2013-11-08T18:02:16.227 に答える
0
// try this
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="5dp"
    android:orientation="vertical">

    <LinearLayout
        android:layout_height="wrap_content"
        android:layout_width="match_parent">

        <TextView
            android:id="@+id/textview"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:text="textview"/>
    </LinearLayout>

    <LinearLayout
        android:layout_height="0dp"
        android:layout_width="match_parent"
        android:layout_marginTop="5dp"
        android:layout_weight="1">

        <ListView
            android:layout_height="match_parent"
            android:layout_width="match_parent"
            android:cacheColorHint="#00000000"
            android:divider="@null"
            android:dividerHeight="0dp"
            android:smoothScrollbar="true"
            android:id="@+id/listview"/>
    </LinearLayout>

    <LinearLayout
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        android:layout_marginTop="5dp"
        android:gravity="center">
        <Button
            android:id="@+id/button"
            android:layout_height="wrap_content"
            android:layout_width="wrap_content"
            android:text="button"/>
    </LinearLayout>

</LinearLayout>
于 2013-11-09T04:13:18.343 に答える