YouTube视频以JSON格式输入表格视图

时间:2012-08-05 08:15:57

标签: iphone objective-c json url

如何在UITableView中获取JSON格式的youtube视频列表。我需要在20个Feed中列出并显示更多按钮,然后需要显示20个结果。

我希望在两种情况下都能获得确切的网址。

现在我正在尝试Url我举例说明。

http://gdata.youtube.com/feeds/api/videos?start-index=11&max-results=20&v=2&alt=jsonc
http://gdata.youtube.com/feeds/api/videos?start-index=2&max-results=20&v=2&alt=jsonc

先谢谢

1 个答案:

答案 0 :(得分:4)

下面的代码将YouTube JSON解析为表格视图。

ss

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    UITableViewCell *cell = nil;
    if (indexPath.row < [[_JSON valueForKeyPath:@"data.items.title"] count]) {
        cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];
        cell.textLabel.text = 
        [[_JSON valueForKeyPath:@"data.items.title"] objectAtIndex:indexPath.row];
        cell.detailTextLabel.text =
        [[_JSON valueForKeyPath:@"data.items.description"] objectAtIndex:indexPath.row];
    }
    return cell;
}

获取JSON的代码如下:

- (IBAction)refresh:(id)sender {
    NSURL *url = [NSURL URLWithString:kStrJsonURL];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id getJSON) {
        _JSON = getJSON;
        NSLog(@"%@", _JSON);
        [self.tableView reloadData];
    } failure:nil];
    [operation start];        
}

您应该阅读有关AFNetworking的开始:

https://github.com/AFNetworking/AFNetworking/wiki/Getting-Started-with-AFNetworking

您可以从GitHub下载示例项目并运行它:

https://github.com/weed/p120805_YouTubeJsonParse