Iは、以下を出力Xcode
で返される配列を有する:このJSON配列からこの特定のノードを抜き出す方法を教えてください。
["userDetails": {
id = 31;
"user_email" = "[email protected]";
"user_name" = "Steve Downs";
}, "communities": <__NSArrayI 0x600000245f40>(
{
id = 5;
name = South;
},
{
id = 13;
name = HurraHarry;
},
{
id = 15;
name = EnclliffeT;
}
)
]
以下のコードが正しくそれぞれの変数に「コミュニティ」内に含まれる値を割り当てます。
let json = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as? [String:AnyObject]
print (json!)
if let arr = json?["communities"] as? [[String:String]] {
self.communitiesArray = arr.flatMap { $0["name"]!}
self.communityIdsArray = arr.flatMap { $0["id"]!}
}
if let arr = json?["userDetails"] as? [AnyObject] {
self.playerId = (arr.flatMap { $0["id"]!} as (AnyObject)) as! [String]
print (self.playerId);
}
しかし、私はトラブル"userDetails"
からid
を割り当てるを抱えています。 "userDetails"
からid
を取得し、それをself.playerIdに割り当てるにはどうすればよいですか?
おかげで、私が手:「?文字列」型の値を割り当てることができません'[String]'と入力してください – RDowns
私はそれを使用しています:self.playerId = [dict ["id"]!] – RDowns