检查TextView是否为空?

时间:2017-09-04 15:56:37

标签: java android date textview

我在TextView中显示日期。有日期的时候一切正常。但是如果没有选择日期或者TextView是空的(虽然有一个提示“dd-mm-yyyy”)然后应用程序崩溃了。我正在检查空TextView,如下所示:if(textview.setText().toString().isEmpty()) {//show error}任何人都可以帮助我做错了吗?

初始化TextViewTextInputlayout

tv_Current_Date = (TextView) findViewById(R.id.tv_Current_Date);
til_Current_Date = (TextInputLayout) findViewById(R.id.til_Current_Date);

以下是导致崩溃的代码:

if (tv_Current_Date.getText().toString().isEmpty()) {
    til_Current_Date.setError("Please choose a date");
}

设定日期的方法:

public void setCurrentDateOnView() {
    String dateFormat = "dd-MM-yyyy";
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormat, Locale.US);
    tv_Current_Date = (TextView) findViewById(R.id.tv_Current_Date);
    tv_Current_Date.setText(simpleDateFormat.format(calendar_now.getTime()));
    String short_weekday = new DateFormatSymbols().getShortWeekdays()[day_of_current_week];
    tv_Current_weekday.setText(short_weekday);
}

4 个答案:

答案 0 :(得分:1)

试试这个

if (tv_Current_Date.getText().toString().equals("")) {
      til_Current_Date.setError("Please choose a date");
}

答案 1 :(得分:0)

试试这个

if(tv_Current_Date.getText().toString().equals("") && tv_Current_Date.getText().length() <= 0){
   tv_Current_Date.setError("your message");
}

答案 2 :(得分:0)

除了Tejas和joao86所说的,你应该检查并确认输入实际上是一个日期。

检查以下链接,讨论有关验证的内容:

Date Validation in Android

How to validate date in dd/mm/yyyy format in editext in android?

Java: Check the date format of current string is according to required format or not

答案 3 :(得分:0)

除了if条件之外,您还需要一个else条件来运行代码。

getCar(carId: number)