我有自定义日期选择器和时间选择器.它正好工作在21级api,但在它不工作之后.我调试了代码并且知道在更改日期时没有调用ondatechanged和ontimechanged.
那么如何解决这个问题呢.
DatePicker的自定义类是 -
public class DatePickerDialog extends Dialog implements OnDateChangedListener,OnClickListener{
private static DatePickerDialog dialog;
private String date;
private String title;
private DatePickerCallback callback;
private DatePicker datePicker;
private TextView tvHeading;
private Button btnDone;
private String lastModifiedDate;
private String initialDate;
private boolean isStartDateToday;
private long currentDateInMS = 0;
private Context context;
private int noOfDaysBefore = 0;
public DatePickerDialog(Context context, DatePickerCallback callback, String date, String title, boolean isStartDateToday,int noOfDaysBefore) {
super(context);
this.context = context; …Run Code Online (Sandbox Code Playgroud) 我DatePickerDialog使用此处显示的示例实现了一个.
在我的实现中,DatePickerDialog.OnDateSetListener我添加了验证逻辑,以检查所选日期是否在特定范围内.
private final DatePickerDialog.OnDateSetListener dateSetListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int y, int m,
int d) {
final Calendar calendar = Calendar.getInstance();
calendar.set(y, m, d);
Date date = calendar.getTime();
if(!myValidationFunction(date)) {
// date not within allowed range
// cancel closing of dialog ?
}
}
};
Run Code Online (Sandbox Code Playgroud)
我DatePickerDialog遇到的问题是,当用户单击设置按钮时,它会自动关闭,DatePickerDialog如果验证规则失败,我想保持打开状态.
DatePickerDialog当用户点击"设置"按钮时,是否有人知道如何停止关闭?