当我点击提交按钮验证未处理是否有任何错误?如果编辑文本为空它将进入下一个活动验证未处理?任何人都可以解决此问题
public void submitDetails(View v)
{
et = (EditText)findViewById(R.id.first);
et1 = (EditText)findViewById(R.id.last);
et2 = (EditText)findViewById(R.id.email);
et3 = (EditText)findViewById(R.id.phone);
et4 = (EditText)findViewById(R.id.dateofbirth);
et5 = (EditText)findViewById(R.id.Address);
btn = (Button)findViewById(R.id.submit);
String first = et.getText().toString();
String last = et1.getText().toString();
String email = et2.getText().toString();
String mobile = et3.getText().toString();
String birth = et4.getText().toString();
String address = et5.getText().toString();
String emailpatern = "[a-zA-Z0-9._-]+@[a-z]+\\.+[a-z]+";
if (et.equals(""))
et.setError("pls enter name");
else if (et2.equals("")&&!et2.equals(emailpatern))
et2.setError("Pls Enter Valid Email");
else if(et3.equals(""))
et3.setError("Enter Mobile Number");
else if (et4.equals(""))
et4.setError("Enter Date of Birth");
else if (et5.equals(""))
et5.setError("fil the fileds");
else
{
Intent i = new Intent(MainActivity.this,Result.class);
i.putExtra("k1",first);
i.putExtra("k2",last);
i.putExtra("k3",email);
i.putExtra("k4",mobile);
i.putExtra("k5",birth);
i.putExtra("k6",address);
startActivity(i);
}
}
答案 0 :(得分:0)
您正在检查EditText的引用是否等于空字符串""
,这将永远不会返回true
。
替换:
et.equals("")
通过
et.getText().trim().equals("")
您必须对所有EditText执行相同的操作,并且可以将您拥有的变量与EditText的内容一起使用。
您的代码应如下所示:
if (first.trim().equals(""))
et.setError("pls enter name");
else if (last.trim().equals("")&&!email.trim().equals(emailpatern))
// ...
else{
Intent i = new Intent(MainActivity.this,Result.class);
i.putExtra("k1",first);
i.putExtra("k2",last);
i.putExtra("k3",email);
i.putExtra("k4",mobile);
i.putExtra("k5",birth);
i.putExtra("k6",address);
startActivity(i);
}