7

簡単なチェックリストを表示しようとしましたが、チェックする項目がいくつか必要です。

これが私のコードです

ArrayAdapter<Task> taskAdapter = new ArrayAdapter<Task>(this, android.R.layout.simple_list_item_checked, tasksList); this.getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); this.getListView().setItemChecked(2, true); setListAdapter(taskAdapter);

<ListView
   android:id="@android:id/list"
   android:layout_width="match_parent"
   android:layout_height="wrap_content">

それでもうまくいきません。Checkable インターフェースの実装は役に立ちませんでした。

この ListView のトリックは何ですか?

4

1 に答える 1

14

アイテムをチェック可能に設定する前に、アダプターを設定する必要があります。

ArrayAdapter<Task> taskAdapter = new ArrayAdapter<Task>(this, android.R.layout.simple_list_item_checked, tasksList);
setListAdapter(taskAdapter);        
this.getListView().setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
this.getListView().setItemChecked(2, true); 

アダプターにはリストビューに格納されたデータが含まれているため、アダプターが設定されるまで項目 2 はリストビューに存在しません。

于 2013-06-07T17:45:31.243 に答える