ListViewを持つLinearLayoutを作成する必要があります。listViewの項目が一致しないparent n線形のレイアウト
final ArrayAdapter<TimeInterval> adapter = new ArrayAdapter<>(getContext(),
R.layout.chat_timer_item,
R.id.timer_label, TimeInterval.INTERVALS);
listView.setAdapter(adapter);
:私はこのようなリストビューにアイテムを追加しようとしました作成した後
<ListView
xmlns:a="http://schemas.android.com/apk/res/android"
a:layout_width="match_parent"
a:layout_height="wrap_content"
a:background="@color/white"
a:cacheColorHint="@color/white"
a:paddingBottom="12dp"
a:paddingTop="12dp">
:
this.setLayoutParams(new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
final ListView listView = (ListView) LayoutInflater.from(getContext()).inflate(R.layout.chat_timer_rollout, null);
addView(listView);
マイチャットタイマーの展開は、次のとおりです。私はこのコードでそれをやりました
チャットタイマーアイテムコード:
<TextView
a:id="@+id/timer_label"
xmlns:a="http://schemas.android.com/apk/res/android"
a:layout_width="match_parent"
a:layout_height="wrap_content"
a:paddingBottom="11dp"
a:paddingLeft="@dimen/timer_label_margin_right"
a:paddingTop="11dp"
a:textColor="@color/primary_text"
a:textSize="@dimen/timer_text_size"/>
これを作成した後、画面上に直線レイアウトが表示されますが、アイテムをクリックすると幅がwrap_contentになり、親に一致しません。どのようにそれを修正するには?私はparam match_parentで膨らませたもう一つの線形レイアウトを設定しようとしましたが、それは助けになりませんでした。ありがとうございました!
'inflate()'呼び出しの2番目のパラメータを 'this'に変更し、' addView() '呼び出しを削除します。 –
@ MikeM.Thank大変ありがとうございます –