Как мне правильно заполнить UITableView NSArray из NSDictionary, созданного с использованием JSONKit?

#iphone #objective-c #ios #json

#iPhone #objective-c #iOS #json

Вопрос:

Извините за длинный вопрос, но это лучше всего резюмирует то, что я пытаюсь сделать:

Мой JSON выглядит так:

 {
    4e8cf1d6c7e24c063e000000 =     {
        "_id" =         {
            "$id" = 4e8cf1d6c7e24c063e000000;
        };
        author = faisal;
        comments =         (
                        {
                author = adias;
                comment = amazing;
            },
                        {
                author = nike;
                comment = "I concur";
            }
        );
        created =         {
            sec = 1317772800;
            usec = 0;
        };
        text = "This is a random post";
        title = "post # 1";
        type =         (
            punjabi
        );
    };
    4e91fd49c7e24cda74000000 =     {
        "_id" =         {
            "$id" = 4e91fd49c7e24cda74000000;
        };
        author = draper;
        comments =         (
                        {
                author = adias;
                comment = "amazing again";
            }
        );
        created =         {
            sec = 1318118400;
            usec = 0;
        };
        text = "This is a random post again";
        title = "post # 2";
        type =         (
            punjabi
        );
    };
}
  

Что я хотел бы сделать, так это в конечном итоге получить UTTableview, в котором каждая строка имеет заголовок (текст из JSON выше):

Это код, который у меня есть на данный момент:

 NSString *responseString = [request responseString];

   NSDictionary *resultsDictionary = [responseString objectFromJSONString];
  

Как мне поместить все в массив для UITableView? Опять же, я немного устал, поскольку могу поклясться, что делал это раньше.

Ответ №1:

Если вам не нужны ключи, вы можете преобразовать его в массив с помощью allValues , например:

 NSArray *values = [resultsDictionary allValues];
  

Комментарии:

1. И если вам нужны ключи, вы также можете использовать [resultsDictionary allKeys]

Ответ №2:

Действительно ли ваш JSON анализируется в NSDictionary, или это NSArray, содержащий экземпляры NSDictionary? Если последнее, то разве это не что-то вроде:

 NSString *textForCell = [[resultsArray objectAtIndex:row] valueForKey:@"title"];