我有一个带有4个EditText和一个按钮的应用程序,应该可以计算给定的输入
其中之一留空时,应用程序崩溃
当EditText留空时,如何验证引发错误
答案 0 :(得分:3)
您可以使用TextUtils.isEmpty(stringData)
,它是首选。对于string.isEmpty()
,空字符串值将引发NullPointerException
。
TextUtils
将始终返回boolean
值。在代码中,前者只需调用另一个就等效,再加上一个空检查。
EditText myEditText1 = findViewById(R.id.editText1);
EditText myEditText2 = findViewById(R.id.editText2);
EditText myEditText3 = findViewById(R.id.editText3);
EditText myEditText4 = findViewById(R.id.editText4);
String myData1 = myEditText1.getText().toString();
String myData2 = myEditText2.getText().toString();
String myData3 = myEditText3.getText().toString();
String myData4 = myEditText4.getText().toString();
if(!TextUtils.isEmpty(myData1) && !TextUtils.isEmpty(myData2) && !TextUtils.isEmpty(myData3) && !TextUtils.isEmpty(myData4)) {
//use edit text data
} else {
Toast.makeText(this, "Fields value can not be empty",Toast.LENGTH_SHORT).show();
}
答案 1 :(得分:0)
单击按钮时,检查EditText是否为空
尝试下面的代码
if(editText.getText().toString.length() == 0){
// Display toast
Toast.makeText(getApplicationContext(), "Please enter something !",Toast.LENGTH_LONG).show();
}
或者您可以使用名为AwesomeValiation
的库答案 2 :(得分:0)
首先,您需要将编辑文本和按钮与ID关联起来
EditText editText1 = findViewById(R.id.editText1);
EditText editText2 = findViewById(R.id.editText2);
EditText editText3 = findViewById(R.id.editText3);
EditText editText4 = findViewById(R.id.editText4);
现在,您可以使用以下代码从editText中获取值
String data = editText.getText();
要检查空值
if (data.isEmpty ){
Toast.makeText(getApplicationContext(),"the data is "+data,Toast.SHORT_LENGTH).show;
}