这是我的代码。我想改变点颜色,但我没有找到任何解决方案。谢谢
func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int {
return 1;
}
func calendar(_ calendar: FSCalendar, appearance: FSCalendarAppearance, eventColorFor date: Date) -> UIColor? {
return UIColor.red
}
以下是这些事件点的示例图片:
答案 0 :(得分:1)
此示例取自here。基本上你只需使用给定的方法,检查事件类型或类似的东西,并返回你喜欢的颜色。
//Used by one of the example methods
var datesWithEvent = ["2015-10-03", "2015-10-06", "2015-10-12", "2015-10-25"]
var datesWithMultipleEvents = ["2015-10-08", "2015-10-16", "2015-10-20", "2015-10-28"]
//Used in one of the example methods
fileprivate lazy var dateFormatter2: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
return formatter
}()
完整的例子是为了嵌入,所以我只采用了2个示例方法。我添加了示例中的字段,以获得这样一个方法的“完整”示例。
func calendar(_ calendar: FSCalendar, appearance: FSCalendarAppearance, eventColorFor date: Date) -> UIColor? {
//Do some checks and return whatever color you want to.
return UIColor.purple
}
func calendar(_ calendar: FSCalendar, appearance: FSCalendarAppearance, eventDefaultColorsFor date: Date) -> [UIColor]? {
let key = self.dateFormatter2.string(from: date)
if self.datesWithMultipleEvents.contains(key) {
return [UIColor.magenta, appearance.eventDefaultColor, UIColor.black]
}
return nil
}
为了更好地理解,请查看Github中的链接示例类。这个例子非常自我解释。