我在检查EditText的长度方面遇到了一些问题。
text = take.getText().toString();
if (text.matches("")) {
Toast.makeText(getApplicationContext(), "Enter first value", Toast.LENGTH_SHORT).show();
take是一个EditText,text是一个String。
当我在没有Edittext值的情况下运行我的应用程序时出现错误: 不幸的是" ApplicationName"已经停止了。
在我的课程中我有
private EditText take;
private String text;
请帮助我,我尝试使用方法.equals("")
或.length()==0
,但同样如此。
答案 0 :(得分:1)
您可能忘记了findViewById,或者在活动的setContentView之前调用它!
答案 1 :(得分:0)
某些时间匹配并且相等将无法正常返回。我更喜欢使用函数来检查空值。
public static String chechNullState(EditText checkTextBox) {
String makeModVal = null;
if (!TextUtils.isEmpty( checkTextBox.getText().toString() ))
{
makeModVal=checkTextBox.getText().toString();
return makeModVal;
}
else
{
return null;
}
}
用法:
item =(EditText)findViewById(R.id.take);
String takeVal = chechNullState(item);
if ( !takeVal == null)
{
//do what ever you want;
}