をのみ、誤った値を表示する方法を私はのEditTextで、ユーザからの入力を取っています。今、私は、他のテキストボックスに希望の出力を表示するが、ユーザーが間違った値を入力すると、間違った値をすべてダイアログボックスが開き、ボックスが何度か間違った値を検出するまで繰り返される。たとえば、編集ボックスに3つの間違った値を追加すると、ボックスが3回開いています。
String s=editText1.getText().toString();
String z[]=s.split("\\s");
editText2.setText("");
String a = "";
String b = " Not valid";
for(int i=0;i<z.length;i++)
{
int j=Integer.parseInt(z[i]);
if(j>=65 && j<=97)
{
editText2.setText(editText2.getText() + "" + String.valueOf((char) j));
}
else {
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this);
a += z[i]+"\t";
alertDialogBuilder.setTitle("Error");
alertDialogBuilder.setCancelable(false);
alertDialogBuilder.setMessage(a+b)
.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}
のでごalertDialog.show(); forループの中にあります – user3040153
ループの外側にそれを保ちます あなたのメッセージを準備して、alertDialog.show()を呼び出してください。ループが終了しました – user3040153
@ user3040153 forループの外にいてalertDialogue.show()を呼び出すと、ユーザーが正しい値を入力してもまだ1度開いています – Rohan