Material Calendar View for Android APIs 8+

This library is the result of working in a forked repository. The story of this project started when I was developing an Android App at work that needs a Calendar to display events, when doing research, I found many solutions, but the trouble was that no one match with the app in the way as I want.


The project I'm currently using as base is Custom Calendar View, being this one of the most beautiful and customizable projects I have found.


Available Features

Actually, the project has this features supported:

  • - Compatibility with Android API 8+ (As I specified in the title)
  • - Swipe gesture-based navigation
  • - 'Next' and 'Previous' month-based navigation
  • - Full customization of calendar from XML file, or setters
  • - User-allowed to handle events when changes month and day selection using two listeners
  • - Show/hide next/previous month overflow days
  • - User-allowed modify Typeface of the Calendar View by using setTypeface() method
  • - Unlimited customizations for Day of the Month using custom Decorators
  • - Add Roboto Fonts files and a Util class to make this fonts accessible. (This probably increase library size)
Features in Process

In order to make the Calendar more customizable and Interactive, the next is a list of some features that I want to add:

  • - Provide two Calendar Views, one build in Java Calendar API, and the other in JODA Time API
  • - Synchronize Events with Google Calendar ContentProvider
  • - Add Ripple Effects when the user touches a day
  • - Add two layouts for CalendarView: first one that supports only Swipe navigation without buttons; the second one will support Swipe, and back/next button navigation (actually the default view)
Screenshots

Here are some screenshots taken from the Sample App running on device emulator.

Demo Video

This is a gif showing you the swipe working on the Calendar App Sample


Use it in your Project

Actually, the project has a stable release version 1.2.2. Feel free to use Material Calendar View in your project.


Well! Pay attention, I'm going to explain how to setup my project for you to use it. I'll show you the configuration setup from Gradle, Maven and SBT.


Gradle Setup
Maven Setup
SBT Setup