怎么下个月?

时间:2014-07-31 13:24:56

标签: android calendarview

我仍在尝试使用calendarView创建月视图。

我的问题是我不知道如何切换calendarView的月份。我想单击一个按钮,然后视图将显示下个月或上个月。该视图已经基础,因此您无法滚动

CalendarView cal = (CalendarView) findViewById(R.id.calendarMonthView);
    cal.setEnabled(false);

我的想法是使用以下代码:


dateOfLastMonth = currentMonth - month; //伪代码

            CalendarView lastMonth = (CalendarView) findViewById(R.id.calendarMonthView);
            lastMonth.setDate(**dateOfLastMonth**);

但我不知道 dateOfLastMonth 应该有什么价值。

这是正确的方法吗?什么值应该 dateOfLastMoth (不知道因为它必须很长)? 还有另一种方式吗?

1 个答案:

答案 0 :(得分:2)

试试这个:

Calendar cal = Calendar.getInstance(); // Calendar object, with time set to now
cal.add(Calendar.MONTH, -1); // subtract a month
long dateOfLastMonth = cal.getTimeInMillis(); // get the milliseconds since 01/01/1970

如果你想在这个月的第一天做这个

cal.set(Calendar.DAY_OF_MONTH, 1);

我建议在减去一个月之前这样做,因为我不知道如果今天是本月的第31个月并且上个月没有第31个会发生什么。

编辑:如果它是第31个就不会有问题,我只是尝试了,日历只设置为上个月的第30个