gpt4 book ai didi

ios - 如何从数组中显示 fs 日历中的事件点

转载 作者:可可西里 更新时间:2023-11-01 01:14:49 24 4
gpt4 key购买 nike

我正在使用 fs 日历,我正在尝试从名为日期的数组中设置事件点。该数组中有以字符串形式保存的事件日期。所以我必须将每个索引转换为日期,然后为该日期设置一个事件点。这是我这样做的尝试:

if dates.isEmpty == false {
func calendar(_calendar: FSCalendar!, hasEventForDate dateFormatter: DateFormatter) -> Bool {
for i in 0...dates.count - 1 {
let dateFormatter = DateFormatter ()
dateFormatter.dateFormat = "yyyy/MM/dd"
dateFormatter.locale = Locale.init(identifier: "fa_IR")

dateFormatter.date(from: dates[i])

dateFormatter.dateFormat = "yyyy/MM/dd"

return true
}
return false

}
}

但是当我编译代码时没有任何反应,也没有事件点。我做错了什么?

最佳答案

第一个建议,使用字典而不是日期数组,在字典中查找日期的要求较低

其次如果你需要在数组中使用值那么你应该使用for in 并直接使用对象,而不是索引来获取对象原始数组,也只声明一次日期格式化程序

第三你需要使用func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int 因为 func calendar (_calendar: FSCalendar!, hasEventForDate dateFormatter: DateFormatter) -> Bool 已弃用

尝试使用此代码

func calendar(_ calendar: FSCalendar, numberOfEventsFor date: Date) -> Int {
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy/MM/dd"
dateFormatter.locale = Locale.init(identifier: "fa_IR")

for dateStr in dates{
if(dateFormatter.string(from: date) == dateStr)
{
return 1
}
}
return 0
}

关于ios - 如何从数组中显示 fs 日历中的事件点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46267295/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com