0
確認ダイアログを使った再試行処理
Android java超初心者です。よろしくお願いします。
ループ内で処理をし、エラーになったら「再試行しますか?」
というダイアログを出し、回答が「いいえ」の場合はループから出る、
「はい」の場合は再度処理を行う・・・
というロジックを実装しようとしています。
C#のダイアログボックスはモーダルなので簡単に実装できますが
Androidではモードレスなので、ダイアログのボタンを押したときのイベント内で
元の関数自身を再帰的に呼び出さないと実現できないのではないかと
考えているのですが、このような方法しかないでしょうか?
void func1()
{
// 処理
if(func2())
{
// 正常
break;
}
else
{
// エラー
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(con);
alertDialogBuilder.setTitle("確認")
.setMessage("再試行しますか?")
.setNegativeButton("Yes", (dialog, which) -> {
//Yesボタンを押した時の処理
func1();
});
.setPositiveButton("No", (dialog, which) -> {
//Noボタンを押した時の処理
return;
})
}
}