Я столкнулся с проблемой, вызывающей исключение нулевого указателя.Проблема с несколькими коммутаторами, NullPointerException
Проблема связана с тем, как мой метод OnCheckedChanged() структурирован. В настоящее время другое диалоговое представление раздувается на основе строки, которая передается при создании. Основываясь на этом представлении, существуют различные переключатели, которые предоставляются пользователю.
Я ищу способ переконфигурировать следующий код, чтобы он выполнял все инструкции if if и сбой. Я бы хотел, чтобы он сделал что-то похожее на структуру коммутатора (v.getId()) +.
Я стараюсь избегать использования отдельных OnCheckedChange для моего приложения.
Кто-нибудь знает, как я мог бы реструктурировать это, чтобы избежать исключения NullPointerException?
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if (alertDelete.isChecked()) {
// The toggle is enabled
permSet.add("alert_delete");
Log.e("ALERTDELETE", "CHECKED");
} else {
// The toggle is disabled
permSet.remove("alert_delete");
Log.e("ALERTDELETE", "UNCHECKED");
}
if (autoCreate.isChecked()) {
// The toggle is enabled
permSet.add("auto_create");
Log.e("ALERTDELETE", "CHECKED");
} else {
// The toggle is disabled
permSet.remove("auto_create");
Log.e("ALERTDELETE", "UNCHECKED");
}
if (autoDelete.isChecked()) {
// The toggle is enabled
permSet.add("auto_delete");
Log.e("ALERTDELETE", "CHECKED");
} else {
// The toggle is disabled
permSet.remove("auto_delete");
Log.e("ALERTDELETE", "UNCHECKED");
}
if (autoEdit.isChecked()) {
// The toggle is enabled
permSet.add("auto_edit");
Log.e("ALERTDELETE", "CHECKED");
} else {
// The toggle is disabled
permSet.remove("auto_edit");
Log.e("ALERTDELETE", "UNCHECKED");
}
}
что checkAndSet будет вызываться из onCheckChanged() правильно ? –