Я сейчас перевожу проект из Objective C в Swift 5.2. У меня есть следующая строка в Objective C: NSMutableArray *arrNewList = [[responseObject objectForKey:@"Result"] mutableCopy];
, которая возвращает JSON следующим образом:
{
TotalLike = 31;
Totalcomment = 18;
"author_name" = "Scott Edward";
"conv_message" = "They're spending the weekend at her mountain lodge";
"conv_person_name" = Story;
"conv_subscribe" = 1;
"paid_free" = 0;
"story_character" = (
Story,
Abe,
Kay
);
"story_cover" = "upload/story/image_5885bf86d2d1020170123023206.jpg";
"story_id" = 9F6468ADD60FC678;
"story_subtitle" = "";
"story_title" = "Creepy House";
}
При использовании Swiftify и исправлениях, предложенных Xcode, я получаю следующую строку: код:
var arrNewList = ((responseObject as? [AnyHashable : Any])?["Result"]) as? [AnyHashable]
, который возвращает json в следующем формате:
Optional([AnyHashable(
[AnyHashable("conv_person_name"): AnyHashable("Story"),
AnyHashable("story_id"): AnyHashable("9F6468ADD60FC678"),
AnyHashable("story_title"): AnyHashable("Creepy House"),
AnyHashable("paid_free"): AnyHashable("0"),
AnyHashable("author_name"): AnyHashable("Scott Edward"),
AnyHashable("Totalcomment"): AnyHashable("18"),
AnyHashable("TotalLike"): AnyHashable("31"),
AnyHashable("story_subtitle"): AnyHashable(""),
AnyHashable("story_character"): AnyHashable([AnyHashable("Story"),
AnyHashable("Abe"), AnyHashable("Kay")]),
AnyHashable("conv_message"): AnyHashable("They're spending the weekend at her mountain lodge"): AnyHashable("1"),
AnyHashable("story_cover"): AnyHashable("upload/story/image_5885bf86d2d1020170123023206.jpg")]), AnyHashable([AnyHashable("paid_free"): AnyHashable("0"),
Всякий раз, когда я пытаюсь получить доступ к этому JSON, все мое приложение зависало. Я подозреваю, что это происходит из-за приведения «as [Anyhashable: any]», но мне не удалось сделать это правильно. Кто-нибудь может мне помочь, пожалуйста?
Спасибо!