DateTimePicker alternatives and similar libraries
Based on the "Calendar" category.
Alternatively, view DateTimePicker alternatives based on common mentions on social networks and blogs.
FSCalendar9.8 3.8 L1 DateTimePicker VS FSCalendarA fully customizable iOS calendar library, compatible with Objective-C and Swift
JTAppleCalendar9.6 0.0 L1 DateTimePicker VS JTAppleCalendarThe Unofficial Apple iOS Swift Calendar View. Swift calendar Library. iOS calendar Control. 100% Customizable
CVCalendar9.1 0.0 L4 DateTimePicker VS CVCalendarA custom visual calendar for iOS 8+ written in Swift (>= 4.0).
JTCalendar9.0 0.0 L4 DateTimePicker VS JTCalendarA customizable calendar view for iOS.
CalendarKit8.6 2.7 L5 DateTimePicker VS CalendarKit📅 Calendar for Apple platforms in Swift
RSDayFlow7.1 0.0 L3 DateTimePicker VS RSDayFlowiOS 7+ Calendar (Date Picker) with Infinite Scrolling.
Calendar7.1 0.0 L3 DateTimePicker VS CalendarA set of views and controllers for displaying and scheduling events on iOS
GLCalendarView6.9 0.0 L4 DateTimePicker VS GLCalendarViewA fully customizable calendar view acting as a date range picker
Koyomi6.6 0.0 L3 DateTimePicker VS KoyomiSimple customizable calendar component in Swift
Daysquare6.3 0.0 L2 DateTimePicker VS Daysquare📆 An elegant calendar control for iOS.
MBCalendarKit6.3 0.0 DateTimePicker VS MBCalendarKitAn open source calendar framework for iOS, with support for customization, IBDesignable, Autolayout, and more.
ElegantCalendarThe elegant full screen calendar missed in SwiftUI.
KDCalendarView6.0 0.0 L5 DateTimePicker VS KDCalendarViewAn Easy to Use Calendar for iOS (Swift 5.0)
KVKCalendar5.3 6.0 DateTimePicker VS KVKCalendarA most fully customization calendar for Apple platforms 📅
CrispyCalendar4.2 0.0 DateTimePicker VS CrispyCalendarAn easy-to-use, fully customizable and extensible calendar for your app
CalendarPopUp3.7 0.0 DateTimePicker VS CalendarPopUpCalendarPopUp - JTAppleCalendar library
ASCalendar3.5 0.0 L2 DateTimePicker VS ASCalendarA calendar control for iOS written in swift with mvvm pattern
Calendar HeatmapA calendar based heatmap which presenting a time series of data points in colors.
ios_calendar3.4 0.0 DateTimePicker VS ios_calendarCalendar View
RCalendarPicker2.9 0.0 L4 DateTimePicker VS RCalendarPickerRCalendarPicker A date picker control, Calendar calendar control, select control, calendar, date selection, the clock selection control. 日历控件 ，日历选择控件，日历，日期选择，时钟选择控件
NWCalendarView2.2 0.0 L4 DateTimePicker VS NWCalendarViewAn availability calendar implementation for iOS
PTEventView1.2 0.0 DateTimePicker VS PTEventViewAn Event View based on Apple's Event Detail View. Written in Swift 3. Supports ARC, Autolayout and editing via StoryBoard.
GDPersianCalendarCalendar component with RTL languages written in swift
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of DateTimePicker or a related project?
A nicer iOS UI component for picking date and time.
- Date and Time Picker / Date Picker only / Time Picker only - your choice!
- Limit selected date within a defined range of time
- Show or hide month on date cell
- Infinite scrolling for time
- Customize colors and date format
- (v1.3) Constraint-based UI
- (v2.0) Now you can create picker view as a separate view!
- (v2.1.0) Carthage is now supported (a bit late - sorry)
- (v2.3.0) Options to select custom font and colors
- (v2.4.0) Option to show seconds column
- (v2.5.0) SPM support
- Custom TimeZone and Calendar
To-dos (HELP NEEDED! 🎯)
- Option to select month / year (UI idea needed)
- Swift 5 & Xcode 12
- For Swift 4.2 please use branch
- For Swift 4.1 please use branch
- For Swift 3.0 please use version 1.1.4
- iOS 10 and later
Just add the following to your
From v2.1.0 onward, you can integrate DateTimePicker into your Xcode project using Carthage by specifying it in your
github "itsmeichigo/DateTimePicker" ~> 2.1.0
carthage update to build the framework and drag the built
DateTimePicker.framework into your Xcode project.
Using Swift Package Manager
From v2.5.0 you can add DateTimePicker to your project via SPM. Paste link to this repo in SPM configuration window and you're good to go.
Drag and drop folder
Source to your project.
Please make sure to update the nib files custom class module to inherit from your current target so that the custom files can be found:
Navigation to folder named
pod install and open the workspace file to play around with
Since v2.0 onward, picker view can be created separately and used to add to any view you want. Note: the picker view is built with fixed width and height, so you're not encouraged to manually update it or you will get corrupted UI for the view. If necessary, please only change the y position of the view.
let min = Date().addingTimeInterval(-60 * 60 * 24 * 4) let max = Date().addingTimeInterval(60 * 60 * 24 * 4) let picker = DateTimePicker.create(minimumDate: min, maximumDate: max) picker.frame = CGRect(x: 0, y: 100, width: picker.frame.size.width, height: picker.frame.size.height) self.view.addSubview(picker)
If you still want the old behavior (show the picker like a modal), you can call
let picker = DateTimePicker() picker.show()
v1.3 and below
For older versions, the only option is to use the built in
show method, which returns an instance of
DateTimePicker and also show the picker like a modal on top window. The picker can be dismissed when Cancel button is tapped.
let picker = DateTimePicker.show()
There are many options to customize picker for your own desire:
maximumDate: date and time limit for the picker. You can only set these when creating the picker, default value is last 10 days for minimum date and next 10 days for maximum date. If you set these dates yourself, make sure that minimum date is an earlier time than maximum date.
selectedDate: date to be selected when picker is first created, default is current date. Selected date has to be later than
minimumDateand earlier than
locale: locale for the language displayed. default is device's locale.
dateFormat: format for the date shown in picker view. default is HH:mm dd/MM/YYYY.
cancelButtonTitle: title for dismiss button, default is Cancel.
todayButtonTitle: title for reset time button, default to Today.
doneButtonTitle: title for done button, default to DONE.
is12HourFormat: whether to display time in 12 hour format, default to false.
isDatePickerOnly: whether to only show date in picker view, default to false.
isTimePickerOnly: whether to show only time in picker view, default to false.
includesMonth: whether to include month in date cells, default to false.
includesSecond: whether to show second in time selection, default to false.
timeInterval: time interval, in minutes, default to 1. If not default, infinite scrolling is off.
timeZone: timezone used in picker, default is device timezone.
dismissHandler: callback block when cancel button of picker view is tapped.
delegate: object to be notified when a new date or time is selected.
highlightColor: custom highlight color, default to cyan.
darkColor: custom dark color, default to grey.
doneBackgroundColor: custom DONE button color, default to darkColor.
daysBackgroundColor: custom background color for date cells.
customFontSetting: custom font settings for all labels in the component.
Contributions for bug fixing or improvements are welcome. Feel free to submit a pull request.
DateTimePicker is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the DateTimePicker README section above are relevant to that project's source code only.