Android的上一个优雅,高度自定义,性能高效的日历控件,完美支持周视图,支持标记,自定义颜色,农历等,任意控制月视图显示.Canvas绘制,速度快,占用内存低,,支持简单定制即可实现任意自定义布局,自定义UI,支持收缩展开,性能非常高效,这个控件内存和效率优势相当明显,而且真正做到收缩+展开,适配多种场景,支持同时多种颜色标记日历事务,你真的想不到日历还可以如此优雅!更多参考用法请移步演示,演示实现了4个精美的自定义效果。
compile 'com.haibin:calendarview:3.2.4'
<dependency>
<groupId>com.haibin</groupId>
<artifactId>calendarview</artifactId>
<version>3.2.4</version>
<type>pom</type>
</dependency>
- 是否支持周末等颜色单独?支持的,需要你自定义MonthView,WeekView,Calendar.isWeekend()可以自行判断是否周末,使用对应的画笔即可
- 是否支持与其他控件联动?支持的,假如你喜欢小米的日历日期快速跳转,那么你也可以使用类似的控件通过调用各种CalendarView.scrollToCalendar(); 函数即可
- 是否支持日期长按?支持的,长按回调你可以做一些诸如声音,震动效果,框架并不提供,不利于解耦
- 是否支持用图片作为点击效果?支持的,但你需要会drawBitmap
- 是否支持网格显示?当然是支持的,看你怎么绘制
- 是否支持WeekBar星期日与日期联系?支持的,你需要自定义WeekBar,实现onDateSelected(日历日历,布尔isClick);函数即可
- 因此,只要在MonthView,WeekView里面出现的UI,什么五角星,贝塞尔曲线,图片等等,都是支持的,只要你会绘制,UI美不美,真的就看你了
- keepclasseswithmembers类* {
公共 < init >(android.content 。上下文);
}
https://juejin.im/post/5a6743836fb9a01caa20aefc
< COM .haibin.calendarview.CalendarLayout
机器人:layout_width = “ match_parent ”
机器人:layout_height = “ match_parent ”
机器人:取向 = “垂直”
的应用程序:default_status = “收缩”
的应用程序:calendar_show_mode = “ only_week_view ”
应用:calendar_content_view_id = “ @ + id / recyclerView “>
< COM .haibin.calendarview.CalendarView
机器人:ID = “ @ + ID / calendarView ”
机器人:layout_width = “ match_parent ”
机器人:layout_height = “ WRAP_CONTENT ”
机器人:背景 = “ #FFF ”
应用:month_view = “ com.haibin。 calendarviewproject.simple.SimpleCalendarCardView “
app :week_view = ”com.haibin.calendarviewproject.simple.SimpleWeekView “
app :week_bar_view = ” com.haibin.calendarviewproject.EnglishWeekBar “
app :calendar_height = ” 50dp “
app :current_month_text_color = ”#333333 “
app :current_month_lunar_text_color = ”
# CFCFCF “ app :min_year = “ 2004 ”
app :other_month_text_color = “#e1e1e1 ”
应用:scheme_text = “假”
的应用程序:scheme_text_color = “#333 ”
的应用程序:scheme_theme_color = “#333 ”
的应用程序:selected_text_color = “ #FFF ”
应用:selected_theme_color = “#333 ”
的应用程序:week_background = “ #FFF ”
应用:month_view_show_mode = “ mode_only_current ”
应用:week_text_color = “#111 ” />
< 机器人 .support.v7.widget.RecyclerView
机器人:ID = “ @ + ID / recyclerView ”
机器人:layout_width = “ match_parent ”
机器人:layout_height = “ match_parent ”
机器人:背景 = “#d4d4d4 ” />
</ com .haibin.calendarview.CalendarLayout>
热门源码