Android 如何在用户提交时使用空字段发出警报

Android 如何在用户提交时使用空字段发出警报,android,Android,我想在我的代码中添加一个警报,这样当用户单击按钮而不填充字段时,就会出现一条错误消息。请提出一些措施 这是我的代码: Button button1 = (Button) findViewById(R.id.widget45); button1.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { tv= name.getText().toSt

我想在我的代码中添加一个警报,这样当用户单击按钮而不填充字段时,就会出现一条错误消息。请提出一些措施

这是我的代码:

    Button button1 = (Button) findViewById(R.id.widget45);
    button1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {

          tv= name.getText().toString();
           tv1 = pass.getText().toString();
           x.setText(tv);
           y.setText(tv1);
       }
    });


}

}好的,尝试使用AlertDialog。检查字段是否为空,如果为空

final AlertDialog alertDialog = new AlertDialog.Builder(getApplicationContext())
                    .create();
alertDialog.setTitle("Warning");
alertDialog.setMessage("Please fill required fields");
            alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int which) {
                    alertDialog.dismiss();
                    //Warn user
                }
            });
alertDialog.show();

尽管我认为使用Toast+动画会更好,正如谷歌的例子所示。不需要打扰用户

好的,尝试使用AlertDialog。检查字段是否为空,如果为空

final AlertDialog alertDialog = new AlertDialog.Builder(getApplicationContext())
                    .create();
alertDialog.setTitle("Warning");
alertDialog.setMessage("Please fill required fields");
            alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int which) {
                    alertDialog.dismiss();
                    //Warn user
                }
            });
alertDialog.show();

尽管我认为使用Toast+动画会更好,正如谷歌的例子所示。不需要打扰用户

您可以执行以下操作:

Button button1 = (Button) findViewById(R.id.widget45);
button1.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {

      tv= name.getText().toString();
      tv1 = pass.getText().toString();
      if( tv.length() == 0 || tv1.length() == 0 ) {
          Toast.makeText(v.getContext(), R.string.input_not_filled, Toast.LENGTH_SHORT).show();
          return;
      }
      x.setText(tv);
      y.setText(tv1);
   }
});
这将检查返回的字符串是否为空。如果是这样,用保存在string.xml中名为input_not_filled的文本祝酒1秒钟。当然不处理setText。当然,您可以单独检查这些元素

我认为这是最简单的方法


干杯

你可以做如下事情:

Button button1 = (Button) findViewById(R.id.widget45);
button1.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {

      tv= name.getText().toString();
      tv1 = pass.getText().toString();
      if( tv.length() == 0 || tv1.length() == 0 ) {
          Toast.makeText(v.getContext(), R.string.input_not_filled, Toast.LENGTH_SHORT).show();
          return;
      }
      x.setText(tv);
      y.setText(tv1);
   }
});
这将检查返回的字符串是否为空。如果是这样,用保存在string.xml中名为input_not_filled的文本祝酒1秒钟。当然不处理setText。当然,您可以单独检查这些元素

我认为这是最简单的方法


干杯

欢迎来到Stackoverflow

本网站旨在帮助您发现错误,并在其他用户的帮助下修复错误。因此,如果你不把每个a,i,e,o或u都放出来,这也是有帮助的

现在谈谈你的问题

要检查字段是否为空,请按照以下方式进行测试:

tv = name.getText().toString();
if(tv.trim().equals("")) {
    // text is empty

    showDialog(EMPTY_TEXT_ALERT);
}
现在,您已经调用了
showDialog
,您必须在活动类中重写
onCreateDialog(int-id)
。您还必须定义我在这里使用的
EMPTY\u TEXT\u ALERT
变量

private final static int EMPTY_TEXT_ALERT = 0;

@Override
protected Dialog onCreateDialog(int id) {
    switch(id) {
        case EMPTY_TEXT_ALERT: {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setMessage("Your error message")
                   .setPositiveButton("OK", new DialogInterface.OnClickListener() {

                       @Override
                       public void onClick(DialogInterface dialog, int which) {
                           dialog.cancel();
                       }
             });

             return builder.create();
        }
    }

    return null;
}

这样,使用相应的
id
调用
showDialog
将显示对话框,然后单击将创建的确定按钮将关闭对话框。

欢迎使用Stackoverflow

本网站旨在帮助您发现错误,并在其他用户的帮助下修复错误。因此,如果你不把每个a,i,e,o或u都放出来,这也是有帮助的

现在谈谈你的问题

要检查字段是否为空,请按照以下方式进行测试:

tv = name.getText().toString();
if(tv.trim().equals("")) {
    // text is empty

    showDialog(EMPTY_TEXT_ALERT);
}
现在,您已经调用了
showDialog
,您必须在活动类中重写
onCreateDialog(int-id)
。您还必须定义我在这里使用的
EMPTY\u TEXT\u ALERT
变量

private final static int EMPTY_TEXT_ALERT = 0;

@Override
protected Dialog onCreateDialog(int id) {
    switch(id) {
        case EMPTY_TEXT_ALERT: {
            AlertDialog.Builder builder = new AlertDialog.Builder(this);
            builder.setMessage("Your error message")
                   .setPositiveButton("OK", new DialogInterface.OnClickListener() {

                       @Override
                       public void onClick(DialogInterface dialog, int which) {
                           dialog.cancel();
                       }
             });

             return builder.create();
        }
    }

    return null;
}

这样,使用相应的
id
调用
showDialog
将显示该对话框,然后单击将创建的确定按钮将关闭该对话框。

这很简单,工作正常

EditText ed=(EditText)findViewById(R.id.ed1);
String var=ed.getText().toString();
if(var.length()==0) {
   ed.setError("Your message");
}
else {
   // continue
}

这很简单,效果很好

EditText ed=(EditText)findViewById(R.id.ed1);
String var=ed.getText().toString();
if(var.length()==0) {
   ed.setError("Your message");
}
else {
   // continue
}

很抱歉听到你键盘上的元音都断了。我已经为您添加了它们:-)不,但说真的,标题简短可能是您问题的简短版本-您不必尝试将所有内容都塞进其中,特别是如果您能让它适应的唯一方法是进入移动短信模式。很遗憾听到您键盘上的所有元音都断了。我已经为你添加了它们:-)不,但说真的,标题简短是你问题的简短版本-你不必尝试将所有内容都塞进其中,特别是如果你能让它适应的唯一方法是进入移动短信模式。