在另一个AlertDialog之上显示AlertDialog

时间:2013-07-16 12:44:14

标签: android android-layout android-alertdialog

我正在以一种实际上是自定义Alertdialog的形式从用户那里获取一些个人详细信息。现在,当用户按下Alertdialog中的提交按钮时,如果存在验证错误;我正在尝试显示另一个Alertdialog,并显示错误消息,例如请输入名字

正在发生的事情是,由于验证错误而显示第二个Alertdialog,主Alertdialog(注册表单)消失了。

任何可能导致我这种情况的原因。任何帮助表示赞赏。

修改

请注意,我已考虑过setError,但我的布局中还有其他一些观看内容,例如SpinnerRadioButton。因此,对setError使用EditText并不能完全解决我的问题。

2 个答案:

答案 0 :(得分:1)

您可以在关闭edittexts上的对话框和setErrorText之前进行验证,这样用户就可以看到它,而不会离开视图。

答案 1 :(得分:1)

如果在现有对话框上显示另一个对话框是您的应用程序的要求,我建议您创建一个新活动,仅用于显示该自定义警报对话框。 将该活动添加到您的清单并将主题设置为“@android:style / Theme.Dialog”。

<activity android:theme="@android:style/Theme.Dialog" android:name="LocationDialog"> </activity>
对话框界面的

和onClick侦听器只是启动对话框活动以显示验证错误。

 public void onClick(DialogInterface arg0, int arg1) {
         Intent errorDialog = new Intent(YourActivity.this, ErrorDialogActivity.class);
         startActivity(errorDialog);
  }