Android подскажет и подтвердит диалог ввода пользователя - PullRequest
0 голосов
/ 15 октября 2018

Предполагается, что пользовательский ввод будет представлять собой только строку Юникода в форме "\ u0030" или "0030".пользовательский ввод (toTrain) будет передан методу unicdoetochar и вернет ошибку, если это не юникод.Я хочу проверить ввод пользователя таким образом, чтобы alerttdialog снова появлялся пользователю.

builder
                .setCancelable(false)
                .setPositiveButton("SUBMIT",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,int id) {
                                // get user input and set it to result
                                try {
                                    toTrain = SymbolLib.unicodeToChar(userInput.getText().toString());
                                    Toast.makeText(MainActivity.this, "Symbol: " + toTrain, Toast.LENGTH_SHORT).show();
                                }catch (Exception e){
                                    Toast.makeText(MainActivity.this, "Please enter only unicode!", Toast.LENGTH_SHORT).show();
                                    //alertdialog.show();  symbol cant be resolved

                                }
                                Toast.makeText(MainActivity.this, "Symbol: " + toTrain, Toast.LENGTH_SHORT).show();
                            }
                        })
                .setNegativeButton("Cancel",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog,int id) {
                                dialog.cancel();
                                simpleswitch.setChecked(false);
                            }
                        });
        // create alert dialog
        final AlertDialog alertDialog = builder.create();
...