Awesome
GDCalendar
Calendar component with both RTL/LTR languages support with Swipe Gesture enabled navigation.
Easy to use with Storyboard and Attributes Inspector support.
Requirements
- Xcode 10+
- Swift 4+
- iOS 8+
Installation
Cocoapods
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'
use_frameworks!
target '<Your Target Name>' do
pod 'GDCalendar'
end
pod update
pod install
Usage
import GDCalendar
Set To Desire Locale Calendar
// Persian Calendar Locale: fa_IR
UserDefaults.standard.set("fa_IR", forKey: "current_locale")
// List of available iOS locale names
// https://gist.github.com/jacobbubu/1836273
/*
If `current_locale` is not set, default phone calendar will be selected
*/
Code
let calendar = GDTextSlot(frame: view.bounds)
view.addSubview(calendar)
Set Properties
// Days view items color
calendar.headerItemColor = UIColor.white
// Main calendar items text color
calendar.itemsColor = UIColor.black
// Header view items font
calendar.headersFont = UIFont.boldSystemFont(ofSize: 13)
// Calendar items font
calendar.itemsFont = UIFont.systemFont(ofSize: 15)
// Full properties list can be found on sample project
Set Date Selection Closure
calendar.dateSelectHandler = { [weak self] selectedDate in
print(selectedDate)
// Get Date Components
let day = date.dayName
let month = date.monthName
let components = date.componentsOfDate
print("\(components.year) / \(components.month) / \(components.day)")
}
Storyboard
- Add
UIView
to storyboard, set custom class toGDCalendar
- Set attributes with
Attribute Inspector
Licence
GDCalendar is available under the MIT license. See the LICENSE.txt file for more info.