Какой календарь выбрать для IOS приложения?
На данный момент я использую FSCalendar в своем приложении, но его функционал ограничен.
Мне нужен календарь с событиями. Объясняю: событие по типу Action как у кнопок, что бы при изменении даты или месяца происходило определенное событие, и после нажатия определенной кнопки, которая расположена на этой же странице - данная дата помечалась на календаре. Возможно я чего-то не знаю про FSCalendar, но все что я нашел - не работает для меня.
Заранее спасибо за помощь!
Ответы (1 шт):
В FSCalendar даты можно отмечать, используя метод его dataSource (нужно установить свойство dataSource в коде или интерфейс билдере). Вот пример как отметить выбранную в пикере дату. Также советую заглянуть в FSCalendar.h для ознакомления с другими возможностями кастомизации
class ViewController: UIViewController {
@IBOutlet var calendar: FSCalendar!
@IBOutlet var datePicker: UIDatePicker!
private var selectedDate: Date?
@IBAction func applyDateButtonTouchUpInside(_ sender: UIButton) {
selectedDate = datePicker.date
calendar.reloadData()
}
}
extension ViewController: FSCalendarDataSource {
func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int {
guard let selectedDate = selectedDate else {
return 0
}
let calendar = Calendar.autoupdatingCurrent
let dateWithoutTime = calendar.date(bySettingHour: 0, minute: 0, second: 0, of: date)
let selectedDateWithoutTime = calendar.date(bySettingHour: 0, minute: 0, second: 0, of: selectedDate)
if dateWithoutTime == selectedDateWithoutTime {
return 1
}
return 0
}
}
