我是android新手。我有一个表单,可以在点击时将值存储到共享首选项。我需要首先验证这些值然后提交。 我尝试过一种简单的机制,但它对我不起作用。
@Override
public void onClick(View v) { //proceed button
// TODO Auto-generated method stub
String fname = e1.getText().toString();
String lname = e2.getText().toString();
String phone = e3.getText().toString();
String adress = e4.getText().toString();
String email = e5.getText().toString();
if(fname==null)
{
e1.setError("null");
}
else
{
Editor ed = sp.edit();
ed.putString("fname", fname);
ed.putString("lname", lname);
ed.putString("phone", phone);
ed.putString("adress", adress);
ed.putString("email", email);
ed.commit();
Toast.makeText(getApplicationContext(), "Saved", Toast.LENGTH_LONG).show();
}
这里if子句不起作用,值保存天气fname为空。
答案 0 :(得分:1)
如果EditText
e1为空,则以下表达式将导致空字符串""
。它不会是null
。
String fname = e1.getText().toString();
所以,请按以下方式检查:
if("".equals(fname)) {
e1.setError("empty");
}
答案 1 :(得分:0)
fname
不是null
,但它是空的,因此请使用fname.isEmpty()
代替fname == null
if(fname.isEmpty())
{
e1.setError("null");
}