【发布时间】:2018-09-01 16:57:57
【问题描述】:
我创建了带有三个 EditText 和一个按钮来发送值的 AlertDialog。如果 Edit Text 之一为空,它应该返回到 Alert Dialog。
我用这段代码来检查:
if (TextUtils.isEmpty(edt_dialog_date.getText().toString())) {
Toast.makeText(MainActivity.this, "Please enter Date",
Toast.LENGTH_SHORT).show();
return;
}
如果编辑文本为空,它会关闭 Alert 对话框并返回到 Parent Activity ,我想要的是返回到 AlertDialog 本身。 该怎么做?
这是我的来源:
final AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("Add New Bill");
LayoutInflater inflater = this.getLayoutInflater();
View custom_dialog = inflater.inflate(R.layout.dialog_custom, null);
EditText edtNo = (EditText) custom_dialog .findViewById(R.id.edt_no);
EditText edtName = (EditText) custom_dialog .findViewById(R.id.edt_name);
EditText edtAge = (EditText) custom_dialog .findViewById(R.id.edt_age);
builder.setView(custom_dialog);
builder.setPositiveButton("Add", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (TextUtils.isEmpty(edtNo.getText().toString())) {
return;
}
if (TextUtils.isEmpty(edtName.getText().toString())) {
return;
}
if(TextUtils.isEmpty(edtAge.getText().toString())) {
return;
}
}
});
builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.show();
【问题讨论】:
-
分享您的警报对话框来源
-
@Qasim 它只是一个简单的警报对话框构建器。最终 AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("添加新账单");
-
并且该按钮是使用 Builder 可用的正/负/中性之一,对吧?
-
@Qasim 按钮是正按钮 builder.setPositiveButton("Add", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { if (TextUtils.isEmpty(edtNo. getText().toString())) { return; }
标签: android android-alertdialog