Необязательная привязка (String: AnyObject) к [String]
У меня есть объект / словарь JSON, из которого я получил AFNetworking
и я хочу условно развернуть ключ в массив строк.
var person: [String : AnyObject] = ...
if let interests = person["interests"] as [String]{
// Do something
}
Я получаю следующее сообщение об ошибке: (String : AnyObject) is not convertible to [String]
, Я не думаю, что могу распечатать person
в [String : Any]
потому что это выходит как [String : AnyObject]
от AFNetworking
фреймворк. Любые идеи были бы хорошы.
1 ответ
Решение
Обновите свой Xcode. Вы используете старую версию. До Xcode 6.1, String
не считался типом объекта: вам пришлось использовать NSString
вместо:
if let interests = person["interests"] as? [NSString] {
Apple исправила эту проблему, так что теперь она работает с Xcode 6.1:
if let interests = person["interests"] as? [String] {
Поскольку Swift быстро развивается, вам рекомендуется быть в курсе последней выпущенной версии XCode, которая на момент написания этой статьи была XCode 6.1.1.