UILocalNotification öğesinden userInfo sözlüğüm var. Implicit unwrapping kullanırken String değerini almanın kolay bir yolu var mı?Kullanıcı dizesiyle söz dizimi alın Sözlük
if let s = userInfo?["ID"]
Bana bir dizeye yayınlamam gereken bir AnyObject verir. paketini ve dökme dize için başka for değişken bir edebi -
if let s = userInfo?["ID"] as String
Sadece bir dize almak için iki değişkenleri bildirmek zorunda kalmak istemediğini bana
StringLiteralConvertable
ilgili bir hata verir.Düzenleme İşte benim yöntemidir. Bu işe yaramıyor - I (ifre, AnyObject) If deyiminde String dönüştürülebilir değil olsun.
for notification in scheduledNotifications
{
// optional chainging
let userInfo = notification.userInfo
if let id = userInfo?[ "ID" ] as? String
{
println("Id found: " + id)
}
else
{
println("ID not found")
}
}
Sorumun buna sahip değil, ama işe bu şekilde elde yanında, aslında bir koşul as?
kullanılarak döküm kullanmak istediğiniz
if let s = notification.userInfo?["ID"] as String
Bu işe yaramadı. Fonksiyonumu gönderdim. Ayrıca, orijinal soruya sahip değilim, ancak orijinal olarak bildirime userInfo'ya erişmek istedim. Yani bildirim.userInfo ["ID"]. – Brian
Güncellenmiş yanıtımı görün. – vacawama
Teşekkürler. Xcode 6.0.1 kullanıyordum. 6.1'e yükseltildi ve çalıştı. – Brian