各行に 3 つの TextView がある ListView を使用しています。シンプルですね。
幅を固定するのではなく重みを使用したいのですが、何らかの理由で本当にうまくいかないようです。
これは私の行のレイアウトです:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#f0f0f0"
android:weightSum="7">
<TextView
android:id="@+id/listCaseName"
android:gravity="left"
android:layout_weight="3"
android:width="0dp"
android:textSize="18dp"
android:textStyle="bold"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:lines="1"
android:ellipsize="end" />
<TextView
android:id="@+id/listCaseStatus"
android:layout_weight="2"
android:textSize="20dp"
android:gravity="center"
android:width="0dp"
android:layout_width="0dp"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/listPDF"
android:layout_weight="2"
android:gravity="center"
android:textSize="20dp"
android:width="0dp"
android:layout_width="0dp"
android:layout_height="wrap_content" />
</LinearLayout>
下にスクロールしてアイテムを選択し、上にスクロールするまで、すべて問題ないように見えます。(選択した行を強調表示するための特別なコードがありますが、それは問題ではないと確信しています)
最初のリストビューは次のようになります (まったく問題ありません)。
アイテムをクリックした後に上にスクロールすると、次のようになります。
余分なスペースがたくさんあります (大きな灰色のブロック)
さらに上にスクロールすると、次のようになります。
テキストの一部も台無しになります。
重みを使用する代わりに、テキストビューの幅を修正することで問題を軽減できます。
私は無知です。私はリストビューの経験が少しありますが、今まで常に固定サイズのものを使用しており、問題はありませんでした。
ありがとう!