Want to take your software engineering career to the next level? Join the mailing list for career tips & advice Click here


A material-styled android view that provisions picking of a date, time & recurrence option, all from a single user-interface.

Subscribe to updates I use SublimePicker

Statistics on SublimePicker

Number of watchers on Github 2296
Number of open issues 65
Average time to close an issue 3 months
Main language Java
Open pull requests 9+
Closed pull requests 1+
Last commit about 2 years ago
Repo Created over 5 years ago
Repo Last Updated 4 months ago
Size 18.2 MB
Organization / Authorvikramkakkar
Page Updated
Do you use SublimePicker? Leave a review!
View open issues (65)
View SublimePicker activity
View on github
Book a Mock Interview With Me (Silicon Valley Engineering Leader, 100s of interviews conducted)
Software engineers: It's time to get promoted. Starting NOW! Subscribe to my mailing list and I will equip you with tools, tips and actionable advice to grow in your career.
Evaluating SublimePicker for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


A customizable view that provisions picking of a date, time & recurrence option, all from a single user-interface. You can also view 'SublimePicker' as a collection of material-styled (API 23) DatePicker, TimePicker & RecurrencePicker, backported to API 14.

With the release of version 2, SublimePicker now allows date-range selection.

All three components have been converted to views, which enables us to add/embed them anywhere - add them to a 'Dialog', a 'PopupWindow', or use them as any regular android widget.

Almost all styling possibilities have been exposed through attrs. If something has been missed, please bring it to my attention.

SublimePicker provides a single point of entry to all three pickers. What I mean is that once SublimePicker is available for interaction, the user can select a date, a time & a recurrence option without leaving the picker.

Gradle dependency

compile 'com.appeaser.sublimepickerlibrary:sublimepickerlibrary:2.1.2'


Following screenshots have been taken from the sample application: Get it on Google Play

Launching into DatePicker:

Version 2 allows date-range selection using SublimeOptions#setCanPickDateRange(boolean). Picking date range is one fluent gesture which begins with a long-press on the intended start-date, followed by a drag onto the intended end-date. The range can span as many days, months or years, as needed. During a drag, approaching the left/right edge of date picker scrolls the previous/next month into view.

Date range selection:


Date range selection spanning multiple months:

Button at bottom-left corner can be used to switch to TimePicker:


The overflow button at top-right opens the RecurrencePicker:

Choosing Custom... from this menu brings you to RecurrenceOptionCreator:

Picking Until a date from the bottom spinner & clicking on the date shows a stripped down version of DatePicker:

Sample Application:

Results of the selection in sample application (single date):

Results of the selection in sample application (date range):

How-tos will be added in a day or two...


Copyright (c) 2018 Vikram Kakkar

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


Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.
SublimePicker open issues Ask a question     (View All Issues)
  • about 4 years Cannot change style of Sublime Picker
  • about 4 years Be able to style a Picker inidividually
  • about 4 years How do I disable selection on week ends and holidays?
  • over 4 years How can we get a date and time range in a single swep
  • over 4 years Can not perform this action after onSaveInstanceState
  • over 4 years DateRange launchMode
  • over 4 years Changing Locale Datepicker header shows correct translation but month view is ignoring locale
  • over 4 years Using a style causes crash
  • over 4 years When I set date range, if the max date before current date, I met a bug
  • over 4 years Custom attributes for SublimePicker not working
  • over 4 years android.view.InflateException: Binary XML file line #2: Error inflating class com.appeaser.sublimepickerlibrary.SublimePicker
  • over 4 years Function request: allow selection of multiple dates
  • over 4 years Append RRULE: to the beginning of every generated rrule.
  • over 4 years Documentation
  • over 4 years TimePicker is not shown on landscape orientation
  • over 4 years Convert To Persian Calendar
  • over 4 years set default for RecurrenceRule
  • over 4 years Date Picker not working in Landscape Mode
  • almost 5 years Refactoring WIP
  • about 5 years Support for prompting seconds in timepicker?
  • over 5 years 24h support a bit wrong
  • over 5 years setMinTime, setMaxTime?
SublimePicker open pull requests (View All Pulls)
  • Added API 15 support
  • Add SublimeOptions.firstDayOfWeek
  • Feature/configurable text recurrence
  • Upgrade SDK and Google Support Library Version
  • Feature/date range without long press
  • fix #90 - remove canvas.save(int)
  • Changed compile version to API 28 and updated compile errors
  • Added an alternate range selection mode
  • Fix: Options other than 'Custom' are not selectable in 'REPEAT_OPTION…
SublimePicker list of languages used
Other projects in Java
Powered by Autocode - Instant Webhooks, Scripts and APIs
Autocode logo wordmark