我想知道是否有办法让我检测用户何时更改月份(刷到另一个月)。现在,我已经实施了
calendar.setOnDateChangeListener(this);
我的问题是,当我更改月份时,
@Override
public void onSelectedDayChange(CalendarView view, int year, int month, int dayOfMonth)
火灾,但我得到的年,月和日仍然是我来自的月份的选定日期。
我在这里遗漏了什么吗?有人能指出我正确的方向吗?谢谢!
答案 0 :(得分:1)
不幸的是,您不能使用Android的默认CalenderView实施月份更改事件。但是,here可以使用另一种自定义的MaterialCalendarView,它同时提供日期和月份更改侦听器。
使用该视图的示例代码如下:
MaterialCalendarView calendarView = new MaterialCalendarView(getActivity());
calendarView.setOnMonthChangedListener(new OnMonthChangedListener() {
@Override
public void onMonthChanged(MaterialCalendarView widget, CalendarDay date) {
// Do something here
Date selectedDate = date.getDate();
}
});
还可以使用MaterialCalendarView以类似的方式实现日期更改侦听器。