でも、違いました。AlertDialogは、二度押しを防ぐ仕様にはなっていません。
最近、AlertDialogのボタンが二度押しされていると思わせるような事があったので、簡単なサンプルを書いてエミュレーターで試してみました。
new AlertDialog.Builder(DialogTestActivity.this)
.setTitle("Dialog Test")
.setMessage("Are you OK?")
.setPositiveButton("OK", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Log.d(TAG, "Clicked OK.");
}
})
.setNegativeButton("Cancel", null).show();
こんなコードを書いて、表示されたダイアログのOKボタンをダブルクリックすると、二重押しを示すログが残ります。03-27 10:02:27.576: DEBUG/DialogTest(317): Clicked OK. 03-27 10:02:27.629: DEBUG/DialogTest(317): Clicked OK.OnClickListener()の中に多重実行を想定していない処理が書いてあると、問題が起きるかも知れません。
0 件のコメント:
コメントを投稿