Я создал диалог оповещения с переключателями, используя элементы с одним выбором, и передал ему множество параметров.Когда я выбираю значение, оно работает хорошо, но когда я снова открываю диалоговое окно, выбранный переключатель не отображается.
Вот мой код для этого:
private void openBufferSizePopup() {
AlertDialog.Builder mBuilder = new AlertDialog.Builder(getContext());
mBuilder.setTitle("Buffer Size");
int checkedIndex = getArrayIndex(sizes, Constants.BUFFER_BEFORE);
mBuilder.setSingleChoiceItems(buffer_sizes, checkedIndex, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Constants.BUFFER_SIZE = sizes[i];
SharedPreferences.Editor editor = getContext().getSharedPreferences(TUNEIN2, MODE_PRIVATE).edit();
editor.putInt(Constants.BUFFER_SIZE_STR, Constants.BUFFER_SIZE);
editor.apply();
bufferSizeText.setText("Keep a buffer of " + Constants.BUFFER_SIZE + " minutes while playing");
dialogInterface.dismiss();
}
});
mBuilder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
AlertDialog mDialog = mBuilder.create();
mDialog.show();
}
Ниже приведен скриншот диалогового окна Alert при повторном открытии:
первое значение - это то, которое я выбрал, и его переключатель не отображается.Может кто-нибудь сказать мне, почему это?Спасибо