我编写了一个支持并发症的测试应用程序
出于某种原因,钟面仅显示 1-2 个向后事件,但我可以在日志中看到当前日期之前的 10-15 个事件。当我为前向事件返回一个空数组时,我所有的后向事件都开始显示在钟面上。
这是我的功能
func getTimelineEntriesForComplication(complication: CLKComplication, beforeDate date: NSDate, limit: Int, withHandler handler: (([CLKComplicationTimelineEntry]?) -> Void)) {
var entries: [CLKComplicationTimelineEntry] = []
let events = self.events.filter { (event: CEEvent) -> Bool in
return date.compare(event.startDate) == .OrderedDescending
}
var lastDate = date.midnightDate
for event in events {
let entry = CLKComplicationTimelineEntry(date: lastDate, complicationTemplate: event.getComplicationTemplate(complication.family))
if let endDate = event.endDate {
lastDate = endDate
} else {
lastDate = event.startDate
}
entries.append(entry)
if entries.count >= limit {
break
}
}
handler(entries)
}
PS我知道'limit'参数并且它总是大于我的数组的计数
PPS 对不起我的英语:)