1

2 つのラジオ ボタン項目を含むリスト ビューがあります。レイアウトから膨らませると、以下のようにスペースが多くてもスクロール可能になってしまいます。ここに画像の説明を入力 スクリーンショットに示すように、2 つのラジオ ボタンがあります。1. 距離 2. 定格

しかし、「評価」ラジオ ボタンが表示されず、スクロールして表示する必要があります。なぜこうなった。レイアウトの高さを設定して、コンテンツをラップし、親を埋め、親を一致させようとしました。しかし、それは問題を解決しませんでした。なぜこれが起こっているのですか?

ここで私はリストビューを参照しています:

ListView radio_list = (ListView) view.findViewById(R.id.RadioList);
radio_list.setAdapter(new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_single_choice,
                radio_list_items));

radio_list.setItemsCanFocus(true);
radio_list.setChoiceMode(ListView.CHOICE_MODE_SINGLE);

私のxml:

<LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

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

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="#ffffff"
                android:paddingLeft="10dp"
                android:text="SEARCH"
                android:textColor="#FF3300"
                android:textSize="20dp" >
            </TextView>
        </LinearLayout>

        <RelativeLayout
            android:id="@+id/searchTextLayout"
            android:layout_width="match_parent"
            android:layout_height="50dip"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginBottom="20dip"
            android:layout_marginLeft="20dip"
            android:layout_marginRight="20dip"
            android:layout_marginTop="20dip"
            android:orientation="horizontal" >

            <ImageButton
                android:id="@+id/searchTextButton"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_alignParentLeft="true"
                android:background="#685E5C"
                android:contentDescription="Sample"
                android:scaleType="fitCenter"
                android:src="@drawable/abs__ic_search" />

            <EditText
                android:id="@+id/searchText"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_toRightOf="@id/searchTextButton"
                android:background="@drawable/background_black_border_full"
                android:padding="8dp"
                android:textColor="@android:color/white" />
        </RelativeLayout>

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

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="#ffffff"
                android:paddingLeft="10dp"
                android:text="SORT BY"
                android:textColor="#FF3300"
                android:textSize="20dp" >
            </TextView>
        </LinearLayout>

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

            <ListView
                android:id="@+id/RadioList"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
               />
        </LinearLayout>
</LinearLayout>
4

1 に答える 1

3

あなたのレイアウトxmlファイルは奇妙です、

まず第一に、それを単純化する必要があります:

LinearLayout に単一の要素を含める意味はありません => 対応する線形レイアウトが役に立たないことを意味します。

2 番目のポイント: 線形レイアウトに 2 つの子があり、最初の子の高さが「match_parent」で、layout_weight が設定されていない場合、スペースが残っていないため、2 番目の子は押し出されます。(おそらくここであなたの問題です)

3 番目のポイント: 相対レイアウトをリニアレイアウトとして使用しています。証明は、使用しようとしている android:orientation パラメータです。それは役に立たない。相対的なレイアウトの子の位置は、それらの間の相対的な位置によって与えられます。あなたの場合、RelativeLayout の代わりに水平方向の LinearLayout を使用できます

あなたを助けるための最善のアドバイス:レイアウトxmlを簡素化してください。

このトピックの詳細。

于 2013-02-28T12:34:54.603 に答える