MCPcopy Index your code
hub / github.com/huanghaibin-dev/CalendarView

github.com/huanghaibin-dev/CalendarView @main sqlite

repository ↗ · DeepWiki ↗
1,235 symbols 4,000 edges 94 files 503 documented · 41%
README

CalenderView

RecyclerView? ListView or ViewGroup? No, it's Canvas! Ultra performance and free customization interface! Fast rendering and extremely low memory.

Download CalendarViewDemo.apk

温馨提醒 Warm tips

Github代码全部开源无限制使用,免费开源最终版本为3.7.1,垂直、水平切换日历、自定义动画高仿iOS日历等源码不再开源。 The final version of the free and open source part is 3.7.1, the vertical and horizontal switching calendar liked iOS calendar are no longer open source.

   

  

AndroidStudio v3.5+

support version if using support package

implementation 'com.haibin:calendarview:3.6.8'

Androidx version if using Androidx

implementation 'com.haibin:calendarview:3.7.1'
<dependency>
  <groupId>com.haibin</groupId>
  <artifactId>calendarview</artifactId>
  <version>3.7.1</version>
  <type>pom</type>
</dependency>

How to use?

English Doc

中文使用文档

proguard-rules

-keepclasseswithmembers class * {
    public <init>(android.content.Context);
}

or using this proguard-rules

-keep class your project path.MonthView {
    public <init>(android.content.Context);
}
-keep class your project path.WeekBar {
    public <init>(android.content.Context);
}
-keep class your project path.WeekView {
    public <init>(android.content.Context);
}
-keep class your project path.YearView {
    public <init>(android.content.Context);
}

Effect Preview

func

     

YearView and Range Style

     

Beautiful Chinese style

     

Meizu mobile phone calendar

     

Colorful and Full style

     

Progress bar style

     

Galaxy style

     

Licenses

  • Copyright (C) 2013 huanghaibin_dev huanghaibin_dev@163.com

  • Licensed under the Apache License, Version 2.0 (the "License");

  • you may not use this file except in compliance with the License.
  • You may obtain a copy of the License at

  • http://www.apache.org/licenses/LICENSE-2.0

  • Unless required by applicable law or agreed to in writing, software

  • distributed under the License is distributed on an "AS IS" BASIS,
  • WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  • See the License for the specific language governing permissions and limitations under the License.

Extension points exported contracts — how you extend this code

OnYearChangeListener (Interface)
年份视图切换事件,快速年份切换 [13 implementers]
calendarview/src/main/java/com/haibin/calendarview/CalendarView.java
OnGroupChangeListener (Interface)
分组最上面改变通知
app/src/main/java/com/haibin/calendarviewproject/group/GroupRecyclerView.java
OnCalendarSelectListener (Interface)
日历选择事件 [13 implementers]
calendarview/src/main/java/com/haibin/calendarview/CalendarView.java
OnMonthChangeListener (Interface)
月份切换事件 [4 implementers]
calendarview/src/main/java/com/haibin/calendarview/CalendarView.java
OnCalendarInterceptListener (Interface)
拦截日期是否可用事件 [4 implementers]
calendarview/src/main/java/com/haibin/calendarview/CalendarView.java
OnClickCalendarPaddingListener (Interface)
点击Padding位置事件 [3 implementers]
calendarview/src/main/java/com/haibin/calendarview/CalendarView.java

Core symbols most depended-on inside this repo

toString
called by 181
calendarview/src/main/java/com/haibin/calendarview/Calendar.java
getDay
called by 145
calendarview/src/main/java/com/haibin/calendarview/Calendar.java
getYear
called by 105
calendarview/src/main/java/com/haibin/calendarview/Calendar.java
isCurrentMonth
called by 85
calendarview/src/main/java/com/haibin/calendarview/Calendar.java
getMonth
called by 83
calendarview/src/main/java/com/haibin/calendarview/Calendar.java
isCurrentDay
called by 81
calendarview/src/main/java/com/haibin/calendarview/Calendar.java
getWeekStart
called by 75
calendarview/src/main/java/com/haibin/calendarview/CalendarViewDelegate.java
setMonth
called by 60
calendarview/src/main/java/com/haibin/calendarview/Calendar.java

Shape

Method 1,115
Class 103
Interface 17

Languages

Java100%

Modules by API surface

calendarview/src/main/java/com/haibin/calendarview/CalendarView.java136 symbols
calendarview/src/main/java/com/haibin/calendarview/CalendarViewDelegate.java105 symbols
calendarview/src/main/java/com/haibin/calendarview/Calendar.java58 symbols
calendarview/src/main/java/com/haibin/calendarview/CalendarLayout.java39 symbols
calendarview/src/main/java/com/haibin/calendarview/WeekViewPager.java35 symbols
calendarview/src/main/java/com/haibin/calendarview/MonthViewPager.java35 symbols
calendarview/src/main/java/com/haibin/calendarview/CalendarUtil.java30 symbols
calendarview/src/main/java/com/haibin/calendarview/SolarTermUtil.java24 symbols
calendarview/src/main/java/com/haibin/calendarview/YearViewPager.java20 symbols
app/src/main/java/com/haibin/calendarviewproject/group/GroupItemDecoration.java20 symbols
calendarview/src/main/java/com/haibin/calendarview/BaseView.java19 symbols
calendarview/src/main/java/com/haibin/calendarview/YearView.java18 symbols

For agents

$ claude mcp add CalendarView \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact