0
我的清單有問題。當用戶檢查其中一個項目並驗證時,檢查的項目不會被存儲。每次打開一個新的對話框時,清單都會重置。清單不要留下來
我該如何儲存它們?
這裏是我的代碼:
else if(position == 1){
final ArrayList<Integer> mSelectedItems = new ArrayList<Integer>();
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Titre")
.setMultiChoiceItems(R.array.liste_choix, null,
new DialogInterface.OnMultiChoiceClickListener() {
@Override
public void onClick(DialogInterface dialog, int which,
boolean isChecked) {
if (isChecked) {
mSelectedItems.add(which);
} else if (mSelectedItems.contains(which)) {
mSelectedItems.remove(Integer.valueOf(which));
}
}
})
.setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
// User clicked OK, so save the mSelectedItems results somewhere
// or return them to the component that opened the dialog
}
})
.setNegativeButton(R.string.annuler, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
}
});
builder.show();
}
謝謝你的回答。你說的對(1)但(2)不是我要找的。當有人存在我的應用程序時,我想讓複選框保持檢查狀態。所以,當他再次回來時,他們仍然被檢查。 – user3410806
因此,您需要將選擇存儲在某處 - 您是否使用SharedPreferences,SQLite,外部網絡服務器或其他持久性存儲方法進行了研究? 'SharedPreferences'可能是最容易使用的。如果您只是將數據存儲在那裏,然後在下次人員回來時重新加載,則可以用這種方式進行存儲。你也可以使用'SavedInstanceState'來做同樣的事情。 – Rarw