将日历选择限制为仅一个月

时间:2019-04-04 01:47:09

标签: android calendarview

我正在使用日历视图来选择产品的交付日期。我想从当前日期开始在日历视图中只显示一个月?

例如:

今天的日期:04/04/2019-日历视图最多只能显示2019年5月31日,而不能显示上个月。

另一个示例:如果今天的日期:15/08/2019-日历视图最多只能显示2019年9月30日,而不能显示上个月。

这可能吗?如果是这样,当我单击箭头时,如何将其显示为默认日历视图,显示的是全年的负号或负号?

1 个答案:

答案 0 :(得分:-1)

这可能会对您有所帮助。

Calendar myCalendar = Calendar.getInstance();
        DatePickerDialog.OnDateSetListener date = (view, year, monthOfYear, dayOfMonth) -> {
            // TODO Auto-generated method stub
            myCalendar.set(Calendar.YEAR, year);
            myCalendar.set(Calendar.MONTH, monthOfYear);
            myCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
        };

同时调用“日历”视图。

yourView.setOnClickListener(v -> {
            DatePickerDialog dialog = new DatePickerDialog(AddReview.this, date, myCalendar
                    .get(Calendar.YEAR), myCalendar.get(Calendar.MONTH),
                    myCalendar.get(Calendar.DAY_OF_MONTH));
            myCalendar.add(Calendar.DATE, 30);// This line adds days to MaxDate.
            dialog.getDatePicker().setMaxDate(myCalendar.getTime().getTime());
            dialog.getDatePicker().setMinDate(new Date().getTime());
            dialog.show();
        });

现在,您可以按治愈日期计算天数,并相应地增加限制。