NCalendar

介绍:

一款仿miui,仿小米,日历,周日历,月日历,月视图、周视图滑动切换,农历,Andriod Calendar , MIUI Calendar,小米日历

运行效果:

使用说明:

下载demo:

http://fir.im/7lv4

使用

Gradle

compile 'com.necer.ncalendar:ncalendar:2.1.1'
注意:ncalendar:1.0.x 的日历不能升级到 2.x.x,ncalendar:2.x.x是全新的日历

布局文件

<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.0包含一个月日历NMonthCalendar,一个周日历NWeekCalendar和一个滑动切换不同视图的NCalendar, 单一日历请使用NMonthCalendar或者NWeekCalendar。

NCalendar日历包含了周日历和月日历,通过滑动切换不同的视图,交互效果仿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"

支持的属性:

属性描述
solarTextColor公历日期的文本颜色
lunarTextColor农历日期的文本颜色
solarTextSize公历日期的文本大小
lunarTextSize农历日期的文本大小
hintColor不是本月的日期文本颜色
selectCircleColor选中日期和当天的圆颜色
selectCircleRadius选中和当天圆环半径
isShowLunar是否显示农历
hollowCircleColor选中空心圆中间的颜色
hollowCircleStroke选中空心圆圆环粗细
calendarHeight日历高度,在NCalendar中使用
defaultCalendarNCalendar日历默认视图
firstDayOfWeek每周第一天是周日还是周一
duration自动折叠时间
已下载
0