I want to get month shown in calendar view and i cant figure it out. i tried
calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month,
int dayOfMonth) {
int d = dayOfMonth;
int m = month;
Log.d("month", "" + m);
String curDate = String.valueOf(d);
}
});
but it only triggers when user click to the days of month. What i want is when user changes the month i want the changed month(i.e. the month shown in calendar view.) Any help would be appreciated. Thanks in advance.
getDate(): This method is used to get the selected date of CalendarView in milliseconds since January 1, 1970 00:00:00 in user's preferred time zone. This method returns long type value for selected date. Below we get the selected of CalendarView in milliseconds.
I think from Android's default CalendarView you can't achieve what you want. For this you need to implement your custom calendar or any other library which provides this implementation or provides listeners or gestures for swiping between months. Refer this link if it helps you: Material-CalendeView
And this is the sample code:
MaterialCalendarView calendarView = new MaterialCalendarView(getActivity());
calendarView.setOnMonthChangedListener(new OnMonthChangedListener() {
@Override
public void onMonthChanged(MaterialCalendarView widget, CalendarDay date) {
//Do something like this
Date date1 = date.getDate();
}
});
Hope it helps you.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With