:setMultiChoiceItemsと私は、チェックボックスの項目を選択して、私の配列に自分を設定することができ、私のコードでは、私の配列
protected ArrayList<Integer> selectedStatusId = new ArrayList<>();
しかし、私は同じチェックボックスの項目を選択したとき、私の配列からそれをDELET必要と... I私の配列のidが私のmStatuses
と違うので、それをしないでください。 希望の商品を削除するにはどうしたらいいですか?
クリック陽性のボタンの後にすべての選択項目を取得できますか?このことができます
final ArrayList<String> statusesTitles = new ArrayList<>();
for (int i = 0; i < mStatuses.size(); i++) {
statusesTitles.add(mStatuses.get(i).StatusTitle);
}
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.order_dialog_status_title)
.setMultiChoiceItems(statusesTitles.toArray(new String[statusesTitles.size()]), null, new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i, boolean b) {
if (b){
selectedStatusId.add(mStatuses.get(i).StatusId);
} else {
// TODO How I can delete my position from array?
}
}
})
.setPositiveButton(R.string.order_dialog_status_positive_button, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
refreshContent();
}
})
.setNegativeButton(R.string.order_dialog_status_negative_button, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.cancel();
}
});
builder.show();