Why use this library?

- Total customization of all views – This lib does not design anything. It only provides a layout (7 columns and 1-6 rows). Therefore any visual design of both cells and calendar is possible.
- Horizontal or vertical mode – Ability to switch from a vertical scrolling to horizontal scrolling calendar.
- Range selection – Select dates in a range.
- Week/Month mode – 7 columns (Sunday to Saturday). But you decide how many rows to display. Number of rows are limited to the range 1 to 6.
- Custom first day of week – First day of week does not have to be Sunday. You can pick any day.
- Headers – Ability to add headers of varying sizes for each month.
These are a fraction of many more features. Here are calendar styles created by developers using this lib.
Repetitive questions/ delayed answers
Familiarity with the following non-calendar pointers, helps avoid repetitive questions and delayed answers.
- How to use UITableView or UICollectionView and understand how delegate functions work. Knowledge that cells are reused in these controls.
- Questions about this library asked on Github, will get a faster response than contacting me by email.
- Knowledge about the iOS Calendar() class and how time zones work in iOS to avoid questions such as this one (2nd most repeated question).
This does not mean I won’t answer such questions, but i’ll be in better spirits if library specific ones are asked, rather than the famous most-repeated question:
hey i’m new to Swift, how do i xyz?” 🙂
John Novice
Lets Begin!
NOTE: sample code located at the end of each tutorial.
- Installation
- Build calendar from scratch
- Common elements of every calendar.
- Configuring inDates/monthDates/outDates
- Regular selection
- Start the calendar at any date (in progress – ETA 1day)
- Handle device rotation
- Scrolling modes
- Switch between month-view and week-view
- Headers
- Range selection styles
- Events and loading information from a server
- How to add a week number column