一款仿miui,仿小米,日历,周日历,月日历,月视图、周视图滑动切换,农历,Andriod Calendar , MIUI Calendar,小米日历。项目地址:https://github.com/yannecer/NCalendar
效果图
使用方法
1.Gradle
compile 'com.necer.ncalendar:ncalendar:2.1.1'
2.布局文件
<com.necer.ncalendar.calendar.NCalendar
android:id="@+id/ncalendar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:defaultCalendar="Month"
app:firstDayOfWeek="Sunday"
app:selectCircleColor="#3388ff">
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</com.necer.ncalendar.calendar.NCalendar>
ncalendar:2.1.1包含一个月日历NMonthCalendar,一个周日历NWeekCalendar和一个滑动切换不同视图的NCalendar;单一日历请使用NMonthCalendar或者NWeekCalendarNCalendar日历包含了周日历和月日历,通过滑动切换不同的视图,交互效果仿miui日历,尽可能的实现miui的交互逻辑。NCalendar内部需要一个实现了NestedScrollingChild的子类RecyclerView、NestedScrollView都可以。
主要Api
1.监听
ncalendar.setOnCalendarChangeListener(new OnCalendarChangeListener() {
@Override
public void onClickCalendar(DateTime dateTime) {
//日历点击回调
}
@Override
public void onCalendarPageChanged(DateTime dateTime) {
//日历翻页回调
}
});
2.跳转日期
ncalendar.setDate(int year, int month, int day);
3.回到今天
ncalendar.toToday();
4.月-->周 周-->月
ncalendar.toWeek();
ncalendar.toMonth();
5.支持自定义属性,设置NCalendar默认视图、一周的第一天是周日还是周一等
//NCalendar默认视图,Month 或者 Week,默认是 Month
app:defaultCalendar="Month"
app:defaultCalendar="Week"
// 设置一周开始是周一还是周日,Sunday 或者 Monday ,默认是周日Sunday
app:firstDayOfWeek="Sunday"
app:firstDayOfWeek="Monday"