Youtube ios提要缩略图



我正在创建一个应用程序来拉入我朋友的youtube feed。当我运行应用程序时,我收到一个错误:

2013-03-30 16:34:04.973 eastcoastdyes[15395:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSURL initWithString:relativeToURL:]: nil string parameter'
*** First throw call stack:
(0x1a38012 0x1354e7e 0x1a37deb 0xd4a49d 0xdc11e4 0x3859 0x3538fb 0x3539cf 0x33c1bb 0x34cb4b 0x2e92dd 0x13686b0 0x3014fc0 0x300933c 0x3009150 0x2f870bc 0x2f88227 0x2f888e2 0x1a00afe 0x1a00a3d 0x19de7c2 0x19ddf44 0x19dde1b 0x19927e3 0x1992668 0x298ffc 0x231d 0x2245 0x1)
libc++abi.dylib: terminate called throwing an exception
(lldb)
下面是我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *cellID = @"Cell Identifier";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellID];
    if (!cell) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:cellID];
    }
    NSDictionary *video = [self.videos objectAtIndex:indexPath.row];
    cell.textLabel.text = [video objectForKey:@"title"];
    cell.detailTextLabel.text = [video objectForKey:@"uploader"];
    NSURL *url = [[NSURL alloc] initWithString:[video objectForKey:@"data.items.thumbnail.hqdefault"]];
    [cell.imageView setImageWithURL:url placeholderImage:[UIImage imageNamed:@"placeholder"]];
    return cell;

}

我收到它在NSURL *url..帮助请

你得到一个错误,因为你的字典是返回一个nil对象的关键…因此,你应该首先确保你的video字典返回一个非nil对象(字符串),为你的@"data.items.thumbnail.hqdefault"键,然后才初始化你的URL…

NSString *imageURLString = [video valueForKeyPath:@"data.items.thumbnail.hqdefault"]; 
if (imageURLString) {
    NSURL *url = [[NSURL alloc] initWithString:imageURLString];
    [cell.imageView setImageWithURL:url placeholderImage:[UIImage imageNamed:@"placeholder"]];
} else {
// set imageView to something else
}

相关内容

  • 没有找到相关文章

最新更新