我不明白为什么当我尝试设置 UILocalNotification 的 userinfo 字典时,XCode 返回错误“'@lvalue $T7' 与 (NSObject, AnyObject)' 不相同。这是示例:
var medicine: String?
var notification = UILocalNotification()
notification.userInfo["medicine"] = medicine
这不是我第一次遇到字典问题。我不明白苹果在 xcode 6 beta 3 中改变了什么。
我尝试了很多转换,但我不明白问题出在哪里。
最佳答案
您正在创建一个新的 UILocalNotification,因此它的 userInfo
为 nil;没有什么可投的。如果您想将 userInfo
创建为某种明确的 Swift 字典类型,则必须将其视为 Swift 字典(正如您尝试做的那样)。此外,您需要 medicine
的实际值,而不仅仅是未初始化的类型。例如:
var userInfo = [String:String]()
let medicine = "SomeMedicine"
userInfo["medicine"] = medicine
notification.userInfo = userInfo
关于ios - UILocalNotification 用户信息中的 Swift 字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24828350/