実装で肯定的なボタンを追加することで検証を実行できます
final EditText urlEditText = new EditText(this);
DialogInterface.OnClickListener event = new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
try
{
// Validate URL
new URL(urlEditText.getText().toString());
Toast.makeText(getBaseContext(), "URL Accepted", 1).show();
}
catch (MalformedURLException e) {
Toast.makeText(getBaseContext(), "Invalid URL", 1).show();
}
}
};
AlertDialog dialog = new AlertDialog.Builder(this)
.setTitle("Enter the server URL here")
.setNegativeButton("Cancel", null)
.setPositiveButton("Ok",event)
.setView(urlEditText)
.create();
dialog.show();
間違った URL を入力すると、検証されて間違った URL が表示されますToast
。ただし、ダイアログは閉じられ、ユーザーが [キャンセル] を押すか正しい URL を入力するまで表示されたままになります。ダイアログを再作成してユーザーに再度表示するなどの解決策がありますが、これは良い考えです。
間違った URL を入力しても、AlertDialog
まだそこにある方法はありますか?