Hi.... I love your library! But I have a problem with your swift example. Too complicate and does not work or show real word ussage on simulator in 3 minutes....
I think here is better DEMO for all swift players. Cheers.
import UIKit
import EventKit
import EventKitUI
class ViewController: UIViewController, DDCalendarViewDelegate, DDCalendarViewDataSource, EKEventViewDelegate {
@IBOutlet var calendarView: DDCalendarView!;
override func viewDidLoad() {
self.calendarView.scrollDateToVisible(Date(), animated: false)
}
/*
* Add your events and display them on screen
*/
func events(forDay dayMod: Int) -> [Any] {
let event2 = DDCalendarEvent()
event2.title = "Demo Event 2"
event2.dateBegin = NSDate(hour: 17, min: 0, inDays: dayMod) as Date!
event2.dateEnd = NSDate(hour: 19, min: 0, inDays: dayMod) as Date!
let event3 = DDCalendarEvent()
event3.title = "Demo Event 3"
event3.dateBegin = NSDate(hour: 15, min: 50, inDays: dayMod) as Date!
event3.dateEnd = NSDate(hour: 16, min: 0, inDays: dayMod) as Date!
return [event2, event3]
}
//display events for today
func calendarView(_ view: DDCalendarView, eventsForDay date: Date) -> [Any]? {
let newDate = date as NSDate
let daysMod: Int = newDate.days(from: Date())
let newE: [DDCalendarEvent] = self.events(forDay: daysMod) as! [DDCalendarEvent]
var dates = [Any]()
for e: DDCalendarEvent in newE {
// if e.dateBegin == date || e.dateEnd == date {
dates.append(e)
// }
}
return dates
}
public func calendarView(_ view: DDCalendarView, viewFor event: DDCalendarEvent) -> DDCalendarEventView? {
let view = DDCalendarEventView(event: event)
view?.backgroundColor = UIColor.red.withAlphaComponent(0.5)
view?.layer.borderColor = nil
view?.layer.borderWidth = 0
return view
}
func eventViewController(_ controller: EKEventViewController, didCompleteWith action: EKEventViewAction) {
self.dismiss(animated: true, completion: nil)
}
}