我試圖在ListActivity中執行「取消選擇所有」按鈕以取消選中由自定義SimpleCursorAdapter管理的ListView中的所有複選框。取消選中自定義ListView中的所有複選框
至於建議here,我試圖
在我ListActivity我:
Button bt_f_unsel = (Button) findViewById(R.id.btn_f_unsel);
bt_f_unsel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
for (int i=0; i< getListAdapter().getCount(); i++) {
mListView.setItemChecked(i, false);
}
}
});
但沒有任何反應。
我不知道這是否是因爲我的自定義行:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageView
android:id="@+id/contact_pic"
android:layout_width="50dp"
android:layout_height="50dp" />
<TextView
android:id="@+id/contact_name"
android:textSize="10sp"
android:singleLine="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<CheckBox
android:id="@+id/checkbox"
android:button="@drawable/whipem_cb"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
這使得mListView.setItemChecked()找不到複選框。
如何取消選中所有cb並刷新ListActivity中按鈕的所有行?
謝謝
如果我們有超過100個項目,我應該怎麼辦?它只清除其他可見項目嗎? – Google 2017-03-30 12:29:10
如果這真的是ListActivity它甚至可以工作5000. – halxinate 2017-04-20 18:50:05
可以建議在removeallchecks中傳遞什麼?同時調用這個方法 – Panache 2018-01-26 12:28:21