我正在使用来自GitHub的Mozharovsky的CVCalendar。
我正在尝试使用此方法标记特定的日子:

func supplementaryView(shouldDisplayOnDayView dayView: DayView) -> Bool
{
    if(dayView.date.day == day && dayView.date.month == month) {
        return true
    }

    return false
}


问题是dayView.date有时为nil,这会导致错误:

fatal error: unexpectedly found nil while unwrapping an Optional value


如何避免出现错误和错误?

最佳答案

只需使用基本的Optional Unwrapping来测试它是否已定义并满足您的需求:

func supplementaryView(shouldDisplayOnDayView dayView: DayView) -> Bool
{
    if let date = dayView.date {
        if(date.day == day && date.month == month) {
            return true
        }
    } else {
        // date is nil :(
    }

    return false
}

10-04 23:02