Отключить прошедшую дату в диалоговом окне выбора материала - PullRequest
0 голосов
/ 30 мая 2019

Несмотря на то, что я применил минимальную дату к текущей дате сегодня.

Я все еще был в состоянии выбрать прошлые даты.

вот мой код:

ViewUtilities.createDateDialog(context,
    new MaterialDialog.SingleButtonCallback() {
        @Override
        public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
            View view = dialog.getCustomView();
            DatePicker datePicker = (DatePicker) view.findViewById(R.id.datePicker);
            datePicker.setMinDate(System.currentTimeMillis() - 1000);
            int day = datePicker.getDayOfMonth();
            int month = datePicker.getMonth() + 1;
            int year = datePicker.getYear();
            String monthString = month < 10 ? "0" + month : Integer.toString(month);// here I added 1 to the month
            String dayString = day < 10 ? "0" + day : Integer.toString(day);// here I added 1 to the month

            String date = year + "-" + monthString + "-" + dayString;
            if (listener != null) {
                listener.onUpdateDateRemarks(checkListQuestionId, date);
            }
        }
    }, new MaterialDialog.SingleButtonCallback() {
        @Override
        public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
            dialog.dismiss();
        }
});

Мое создание DateDialog:

public static void createDateDialog(Context context,
    MaterialDialog.SingleButtonCallback positiveCallback,
                                        MaterialDialog.SingleButtonCallback negativeCallback) {
        new MaterialDialog.Builder(context)
                .title("Select Target Date")
                .positiveText("OK")
                .negativeText("CANCEL")
                .customView(R.layout.dialog_date, false)
                .positiveColorRes(R.color.colorRed)
                .negativeColorRes(R.color.colorRed)
                .canceledOnTouchOutside(false)
                .onPositive(positiveCallback)
                .onNegative(negativeCallback)
                .canceledOnTouchOutside(false)
                .show();
    }

Я все еще могу выбрать прошедшую дату, хотя там есть

datePicker.setMinDate (System.currentTimeMillis () - 1000);

Есть что-то, по чему я скучаю? что я могу сделать?

...