我是Swift的初学者,我正在尝试完成我的第一个应用程序。 当我输入代码时,它向我显示了这一点:
无法将类型为“ NSDate”的值分配为类型为“日期”吗?
在
newBirthday.birthdate = birthdate as NSDate
我尝试编写使该行代码正常工作的语句,但事实并非如此。每次我现在运行它,都会出现6个错误。
let newBirthday = Birthday(context: context)
newBirthday.firstName = firstName
newBirthday.lastName = lastName
newBirthday.birthdayGift = birthdayGift
newBirthday.birthdate = birthdate as NSDate
newBirthday.birthdayID = UUID().uuidString
答案 0 :(得分:0)
从Swift 3开始,它不再使用Objective-c库NS
因此,如果使用Swift 3.0或更高版本,请删除NS Prefix
在您的情况下,生日对象变量'birthdate'为Date
,而不是NSDate
如果您无法在NSDate
对象中分配Date
,则要在NSDate
中分配Date
,您必须先在Date
中进行投射。
newBirthday.birthdate = birthdate
答案 1 :(得分:-2)
let newBirthday = Birthday(context: context)
newBirthday.firstName = firstName
newBirthday.lastName = lastName
newBirthday.birthdayGift = birthdayGift
newBirthday.birthdate = birthdate as Date
newBirthday.birthdayID = UUID().uuidString