-2

取得した 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

4

1 に答える 1

3

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) を最新の状態に保つことをお勧めします。

于 2014-12-15T18:53:19.157 に答える