[英]How to handle date picker dialog not to set in edittext when clicked outside of dialog android?
当我单击edittext时,将打开日期选择器对话框。 无需在日期选择器中单击“完成”按钮并在对话框外部单击即可,它设置为edittext。
我检查了这个,但这是第一次。 当通过选择对话框而不单击完成按钮来选择第二次时,它将失败。
private final DatePickerDialog.OnDateSetListener datePickerListener = new DatePickerDialog.OnDateSetListener() {
private boolean fired;
public void resetFired(){
fired = false;
}
@Override
public void onDateSet(DatePicker view, int selectedYear,
int selectedMonth, int selectedDay) {
if (fired) {
Log.e("DatePicker", "Ignoring for first time");
birthDayValue = selectedDay;
birthMonthValue = selectedMonth;
birthYearValue = selectedYear;
String birthDayDateFormt = Utils.getBirthDayDate(selectedYear,
selectedMonth, selectedDay);
dateOfBirth.setText(birthDayDateFormt);
dateOfBirth.setError(null);
return;//ignore and return.
}
fired = true;//first time fired
}
};
};
如何解决这个问题?
@Override
public void onDateSet(DatePicker view, int selectedYear,
int selectedMonth, int selectedDay) {
if(view.isShown()) {
if (fired) {
Log.e("DatePicker", "Ignoring for first time");
birthDayValue = selectedDay;
birthMonthValue = selectedMonth;
birthYearValue = selectedYear;
String birthDayDateFormt = Utils.getBirthDayDate(selectedYear,
selectedMonth, selectedDay);
dateOfBirth.setText(birthDayDateFormt);
dateOfBirth.setError(null);
return;//ignore and return.
}
fired = true;//first time fired
}
}
if(view.isShown())在这种情况下添加代码,这是一个简单的步骤并检查输出
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.