我想确保我的editText
不为空,我尝试使用var.matches("")
和var.isEmpty()
,但它不起作用。
我在YouTube上找到了一个使用Listener的教程,但我的sdk说错误。
public void AddData() {
convert();
btnAddData.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
if(validate){
boolean isInserted = myDb.insertData(editCourseID.getText().toString(), editCourses.getText().toString(),
editRoom.getText().toString(),
editDay.getText().toString()
, editTime.getText().toString()
, editLecturer.getText().toString()
);
if (isInserted == true)
Toast.makeText(AddSchedulel.this, "Data Inserted", Toast.LENGTH_LONG).show();
else
Toast.makeText(AddSchedule.this, "Data not Inserted", Toast.LENGTH_LONG).show();
}
}
}
);
MainActivity.ma.RefreshList();
}
public void convert(){
courseID = editCourseID.getText().toString().trim();
courses = editCourse.getText().toString().trim();
room = editRoom.getText().toString().trim();
day = editDay.getText().toString().trim();
time = editJam.getTime().toString().trim();
lecturer = editLecturer.getText().toString().trim();
}
public boolean validate(){
boolean valid = true;
if(courseID.matches("")){
valid = false;
}
if(courses.matches("")){
valid = false;
}
if(room.matches("")){
valid = false;
}
if(day.matches("")){
valid = false;
}
if(time.matches("")){
valid = false;
}
if (lecturer.matches("")){
valid = false;
}
return valid;
}
我该怎么做? 有人可以帮助我找到我的代码有什么问题
答案 0 :(得分:0)
调用if(validate())而不是if(validate)
答案 1 :(得分:0)
为什么要在AddData
方法中设置监听器?
目前还不是很清楚你想做什么,但我的印象是你应该在onClick监听器中调用convert()
,否则变量将在点击之前设置。
另一件事是你不应该使用匹配
private boolean validate(){
return isNotEmpty(courseID) && isNotEmpty(courses);
}
private boolean isNotEmpty(String string) {
return !string.equals("");
}