如何在当前日期到下一个6天的日历中仅显示7天

时间:2017-11-13 06:53:46

标签: android

我正在开发Android应用程序,需要日历从当前日期开始只有7天:如果今天是星期三,那么结果将结婚 - 直到星期二我需要根据我的日历显示。

Calendar instance = Calendar.getInstance();
widget.setSelectedDate(instance.getTime());
Calendar instance1 = Calendar.getInstance();
instance1.set(instance1.get(Calendar.YEAR), Calendar.JANUARY, 1);
Calendar instance2 = Calendar.getInstance();
instance2.set(instance2.get(Calendar.YEAR), Calendar.DECEMBER, 31);
widget.state().edit()
        .setMinimumDate(instance1.getTime())
        .setMaximumDate(instance2.getTime())
        .commit();
widget.addDecorators(
        new MySelectorDecorator(this),
        new HighlightWeekendsDecorator(),
        oneDayDecorator);

2 个答案:

答案 0 :(得分:1)

如果您使用CalendarViewDatePickerDialog,则可以设置min date = today并设置max date = today + 7

CalendarView calendarView = (CalendarView) findViewById(R.id.cl);
long currentTime = System.currentTimeMillis();
long maxTime = currentTime + 1000 * 60 * 60 * 24 * 7;
calendarView.setMinDate(currentTime);
calendarView.setMaxDate(maxTime);

希望它可以帮到你。

答案 1 :(得分:0)

您可以准确地保留代码,只需删除您的固定电话即可。当您为日历调用getInstance时,您将获得一个设置为当前日期和时间的日历实例。

例如:

SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy");
Calendar date = Calendar.getInstance();

for(int i = 0; i < 7;i++){
    Calendar[i] = format.format(date.getTime());
    date.add(Calendar.DATE  , 1);
    System.out.println("date :" + Calendar[i]);
}