Я пытаюсь получить текущие запланированные идентификаторы UILocalNotifications. Я получаю сообщение об ошибке, когда пытаюсь неявно разворачивать userInfo из уведомления. Ошибка происходит на линииБыстрая ошибка при доступе к UILocalNotification userinfo
if let info = notification.userInfo
Ошибка говорит: «Не удалось найти перегрузку„USERINFO“, который принимает переданные аргументы»
Я также пытался делать дополнительный цепочки с
if let info = notification.userInfo?["Id"]
И я получил сообщение об ошибке, что userInfo не принимает индексы.
Он работал, когда я использовал явные развёртки после UserInfo с
if let info = notification.userInfo!
Но я хотел, чтобы не делать этого. Любая помощь будет большой. Полный метод приведен ниже.
func test()
{
let application = UIApplication.sharedApplication()
let scheduledNotifications = application.scheduledLocalNotifications
for notification in scheduledNotifications
{
println("found it")
if let info = notification.userInfo
{
println("in")
} else {
// no userInfo dictionary present
println("else")
}
}
}
Я не знаю, если Свифт был обновлен на этом, но 'scheduledLocalNotifications' теперь возвращает' [UILocalNotification ]? ', поэтому литье типов больше не нужно. – jowie