【问题标题】:AlertDialog.Builder does not stay on screen [duplicate]AlertDialog.Builder 不会留在屏幕上[重复]
【发布时间】:2013-08-27 11:58:30
【问题描述】:

在我的应用程序中,我正在显示 AlertDialog.Builder

AlertDialog.Builder alert = new AlertDialog.Builder(this);

在此警报中有一个 EditText 和 PositiveButton。

AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setMessage("Enter Text");

final EditText input = new EditText(this);
input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);

alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {
if(input.getTest().getText().toString().equalsIgnoreCase("")){
Toast.makeText(Activity.this, "Please enter some text", Toast.LENGTH_LONG).show();
}
}
alert.show();

如果未输入任何内容,则它会在 toast 上显示 请输入一些文本,并且对话框已关闭,但我希望关闭警报对话框。我怎样才能做到这一点?

【问题讨论】:

    标签: android android-activity


    【解决方案1】:
    AlertDialog.Builder alert = new AlertDialog.Builder(this);
    alert.setMessage("Enter Text");
    
    final EditText input = new EditText(this);
    input.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
    
    alert.setView(input);
    alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
         public void onClick(DialogInterface dialog, int whichButton) {}
    }
    
    final AlertDialog dialog = alert.create();
    dialog.show();
    
    dialog.getButton(AlertDialog.BUTTON_POSITIVE).setOnClickListener(
                new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
          if(input.getTest().getText().toString().equalsIgnoreCase("")){
          Toast.makeText(Activity.this, "Please enter some text", Toast.LENGTH_LONG).show();
    }
    }
    });
    

    【讨论】:

      【解决方案2】:

      您需要先创建对话框,然后再显示。

                  AlertDialog.Builder alert = new AlertDialog.Builder(this);
                  AlertDialog alertDialog = alert.create();
                  alertDialog.show();
      

      【讨论】:

        猜你喜欢
        • 2021-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-09
        • 2016-04-09
        相关资源
        最近更新 更多