2

在我的应用程序中,我使用了一个提交按钮来验证是否插入了所有字段,然后它会显示一个警告对话框,您是否要保存或不保存。这是我的代码:

public void OnClick_click2(final Button btnadd)
{
    final Button btn = (Button) btnadd;
    if(btn.getId()==R.id.btnadd){ 

    if(complain_date_txtbx.getText().toString().trim()
            .length() < 1


                        SaveRecord(data);

                        Toast.makeText(getBaseContext(),
                                "Your Task saved Successfully!",
                                Toast.LENGTH_LONG).show();
                    }
                });

        alert.setNegativeButton("Cancel",
                new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog,
                            int whichButton) {
                        dialog.cancel();
                    }
                });

        alert.show();
        }
}

它没有根据我的要求显示 a/c,请确定我出错的地方以及首先单击提交按钮时适合的内容,它会检查所有字段,然后显示一个警报对话框。请指导我

4

2 回答 2

4

删除 “;” 从 if 语句

 if(complain_date_txtbx.getText().toString().trim()
            .length() < 1
            || complain_time_txtbx.getText().toString()
                    .trim().length() < 1
            || job_performed_txtbx.getText().toString()
                    .trim().length() < 1

            || next_due_on_txtbx.getText().toString()
                    .trim().length() < 1);  //<<<<<<<<<<

因为 “;” 终止 if 语句执行,这就是用户无法看到 Toast 的原因

编辑:将您的代码更改为:

   if(complain_date_txtbx.getText().toString().trim()
            .length() < 1
            || complain_time_txtbx.getText().toString()
                    .trim().length() < 1
            || job_performed_txtbx.getText().toString()
                    .trim().length() < 1

            || next_due_on_txtbx.getText().toString()
                    .trim().length() < 1)
    {
        // show alert here if all fields are empty
    }
    else{
            // show alertbox here
     }
于 2012-12-19T09:31:47.050 回答
0

用这个..

if(complain_date_txtbx.getText().toString().trim().length() <  && complain_time_txtbx.getText().toString().trim().length() < 1   && job_performed_txtbx.getText().toString().trim().length() < 1   && next_due_on_txtbx.getText().toString().trim().length() < 1)
 {
        Toast.makeText(getBaseContext(),
                "Please fill all the fields",
                Toast.LENGTH_LONG).show();
 }
于 2012-12-19T09:33:34.613 回答