将JSON主题拆分为tableview中的部分

时间:2013-01-15 03:18:29

标签: ios json

我正在阅读来自网络服务器的文章,这些文章采用JSON格式,并在tableview中显示。我想实现节标题,每个节都是一个主题。到目前为止,只有3个主题,下面'numberOfSectionsInTableView'中的代码正确地确定有3个部分。

我的麻烦在于下一个函数'numberOfRowsInSection'。我无法弄清楚如何确定每个部分中的行数。我已经查看了堆栈溢出的其他答案,没有人帮助我的原因是我有不同数量的节和行,而大多数其他提问者都有固定数量的节。

有什么想法吗?

FYI'news'是JSON格式的文章数组。我遵循这个很棒的教程:JSON

我的头文件如下所示:

NSDictionary *newsArticle;
NSArray *news;
NSMutableData *data;
NSString *tempTopic;
NSString *lastTempTopic;
NSMutableArray *topicList;

我的实现文件如下所示:

- (int)numberOfSectionsInTableView:(UITableView *)tableView{
lastTempTopic = @"";
int numTopics = 0;
topicList = [[NSMutableArray alloc] init];
for (int i=0; i<news.count; i++) {
    newsArticle = [news objectAtIndex:i];
    tempTopic = [newsArticle objectForKey:@"topic"];
    if ([tempTopic isEqualToString:lastTempTopic])
    {
    }
    else
        numTopics++;
    lastTempTopic = tempTopic;
}
return numTopics;
}


- (int)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return [news count];
}

这是我正在解析的JSON代码的通用位。我希望主题1,2,3成为具有适当行数的相应部分。

[{“title”:“title1”,“original_url”:“http://originalurl1.html”,“topic”:“主题1”,“display_url”:“display.url1”,“author”: “Author1”,“published_on”:“date1”,“text_blocks”:[{“TextBlock”:“article content 1”}]},{“title”:“title2”,“original_url”:“http:// originalurl2 .html“,”主题“:”主题1“,”display_url“:”display.url2“,”author“:”Author2“,”published_on“:”date2“,”text_blocks“:[{”TextBlock“:”文章内容2“}]},{”title“:”title3“,”original_url“:”http://originalurl3.html“,”topic“:”主题1“,”display_url“:”display.url3“, “author”:“Author3”,“published_on”:“date3”,“text_blocks”:[{“TextBlock”:“article content 3”}]},{“title”:“title4”,“original_url”:“http ://originalurl4.html“,”主题“:”主题2“,”display_url“:”display.url4“,”author“:”Author4“,”published_on“:”date4“,”text_blocks“:[{” TextBlock“:”文章内容4“}]}, {“title”:“title5”,“original_url”:“http://originalurl5.html”,“topic”:“主题2”,“display_url”:“display.url5”,“author”:“Author5”, “published_on”:“date5”,“text_blocks”:[{“TextBlock”:“文章内容5”}]} {“title”:“title6”,“original_url”:“http://originalurl6.html”,“topic”:“主题2”,“display_url”:“display.url6”,“author”:“Author6”, “published_on”:“date6”,“text_blocks”:[{“TextBlock”:“文章内容6”}]} {“title”:“title7”,“original_url”:“http://originalurl7.html”,“topic”:“主题3”,“display_url”:“display.url7”,“author”:“Author7”, “published_on”:“date7”,“text_blocks”:[{“TextBlock”:“文章内容7”}]}]

0 个答案:

没有答案