我在TextView
中显示日期。有日期的时候一切正常。但是如果没有选择日期或者TextView
是空的(虽然有一个提示“dd-mm-yyyy”)然后应用程序崩溃了。我正在检查空TextView
,如下所示:if(textview.setText().toString().isEmpty()) {//show error}
任何人都可以帮助我做错了吗?
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);
}
答案 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所说的,你应该检查并确认输入实际上是一个日期。
检查以下链接,讨论有关验证的内容:
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)