【发布时间】:2014-11-28 13:42:40
【问题描述】:
此更新对我来说破坏了几件事。
代码如下:
func convertStartAndExpiryDateFromPickerIntoString(datePicker: UIDatePicker) -> String {
let dateFromPicker = datePicker.date
let calendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)
let unitFlags = NSCalendarUnit.MonthCalendarUnit | NSCalendarUnit.DayCalendarUnit
let components = calendar.components(unitFlags, fromDate: dateFromPicker)
return "\(months.objectAtIndex(components.month)) \(components.day)"
}
有什么想法吗?
感谢您的宝贵时间
【问题讨论】:
-
定义“不再工作”。
-
@HotLicks 我的错。没有意识到我没有提供足够的信息。我已经相应地编辑了我的帖子标题。
-
我无法将这个问题的标题与代码相协调,但您标题中的错误表明您正在尝试访问
components上的NSCalendar?可选。在使用它引用的对象之前,您必须解开该可选的(例如使用!强制解包运算符)。 -
这就是问题所在。不知道为什么它一直在为我工作。顺便说一句,我粘贴了错误的代码。
-
Xcode 6.1 添加了可失败的初始化程序,因此
NSCalendar(...)现在返回一个必须解包的可选NSCalendar?。之前,在 Xcode 6.0 中它返回一个常规的NSCalendar。
标签: ios xcode cocoa-touch swift nspredicate