FSC日历今天检查日期

时间:2020-05-17 19:04:53

标签: swift fscalendar

如何确认我点击了今天的日期?

https://github.com/WenchaoIOS/FSCalendar

我得到以下输出:

todaydateString = 2020-05-18
dateString = 2020-05-17

不匹配的

import UIKit

class LoadViewExampleViewController: UIViewController, FSCalendarDataSource, FSCalendarDelegate {

    private weak var calendar: FSCalendar!
    fileprivate lazy var dateFormatter1: DateFormatter = {
        let formatter = DateFormatter()
        formatter.dateFormat = "yyyy-MM-dd"
        return formatter
    }()

    let dateString = "2020-05-15"
    let dateString1 = "2020-05-16"
    let dateString2 = "2020-05-13"

    var selectedDates  = NSMutableArray()

    override func loadView() {

        selectedDates = [dateString, dateString1, dateString2]

        let view = UIView(frame: UIScreen.main.bounds)
        view.backgroundColor = UIColor.groupTableViewBackground
        self.view = view

        let height: CGFloat = UIDevice.current.model.hasPrefix("iPad") ? 400 : 300
        let calendar = FSCalendar(frame: CGRect(x: 0, y: self.navigationController!.navigationBar.frame.maxY, width: self.view.bounds.width, height: height))
        calendar.dataSource = self
        calendar.delegate = self
        calendar.backgroundColor = UIColor.clear


        calendar.appearance.todayColor = UIColor.gray

       // calendar.appearance.borderDefaultColor = UIColor.black
        //calendar.appearance.borderRadius = 0

        self.view.addSubview(calendar)
        self.calendar = calendar

    }

    func calendar(_ calendar: FSCalendar, didDeselect date: Date, at monthPosition: FSCalendarMonthPosition) {

        let todaydate = Date()
        let dateString = self.dateFormatter1.string(from: date)
        let todaydateString = self.dateFormatter1.string(from: todaydate)
        print("todaydateString = \(todaydateString)")
        print("dateString = \(dateString)")


        if dateString == todaydateString
        {
            print("GOOD")
        }
    }

    func calendar(_ calendar: FSCalendar, imageFor date: Date) -> UIImage? {
        let dateString = self.dateFormatter1.string(from: date)

        if self.selectedDates.contains(dateString) {
            let image : UIImage = UIImage(named: "checkbox_Tick")!
            return image
        }
        return UIImage()
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        self.title = "FSCalendar"
    }

    func calendar(_ calendar: FSCalendar, didSelect date: Date, at monthPosition: FSCalendarMonthPosition) {
        if monthPosition == .previous || monthPosition == .next {
            calendar.setCurrentPage(date, animated: true)
        }
    }

}

0 个答案:

没有答案