アイテム名の前にアイテム名とチェックボックスを含むリスト ビューがあり、レイアウトの下に 1 つの削除ボタンがあります。リストに 15 個のアイテムが含まれている場合、下にスクロールして 15 番目のアイテムをチェックすると、10 個のアイテムしか表示されません。次に削除ボタンを押すと、チェックボックスでnull-pointer-exceptionがスローされます。以下は、チェック ボックスを使用してリスト ビューから項目を削除するコードです。
deleteButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
System.out.println("Cursor length is " + cursor.getCount());
for (int i = 1; i <= cursor.getCount(); i++) {
listData.recomputeViewAttributes(view);
listData.getResources();
listData.smoothScrollToPosition(i);
view = listData.getChildAt(i-1);
System.out.println("Count is "+i);
CheckBox box = (CheckBox) view.findViewById(R.id.checkBox1);
if (box.isChecked()) {
System.out.println("Box Checked");
/*cursor.moveToPosition(i);
int id = cursor.getInt(0);
System.out.println("Id is " + id);
controller.deleteBookmarkOnId(id);*/
}
}
dialog.dismiss();
}
});