У меня есть следующая ситуация:Как вернуть Boolean из кнопки Dialog?
У меня есть метод, который выполняет некоторые проверки пользовательских входов.
метод возвращает true
или false
.
Теперь мой метод вызывает некоторые диалоги, если это так.
Я не могу вернуть булевую форму onClick
, потому что onClick
возвращает пустоту.
Возможно, кто-нибудь предложит мне обходное решение ???
Спасибо !!!
public Boolean retrunvalue=false;
private Boolean performchecks() {
if (!reminderdatepicked && !remindertimepicked) {
AlertDialog.Builder builder = new AlertDialog.Builder(
NewGenericEvent.this);
builder.setTitle(R.string.remindernotsettitle);
builder.setMessage(R.string.remindernotmessage)
.setPositiveButton(R.string.yes,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
retrunvalue= true;//NOT A GOOD IDEA
//BECAUSE IT RETURNS TRUE
//ONLY WHEN performchecks()
//IS CALLED THE SECOND TIME
}
});
builder.setNegativeButton(R.string.no,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
retrunvalue= false;
}
});
builder.create().show();
return retrunvalue;
}
return true;
}
@Maxim Shoustin да, но если пользователь нажимает на кнопку положительный это должен возвращать «истинную» возможность немедленно, а не когда 'performchecks()' вызывается второй раз –