2012-05-10 43 views
0

我已经设法从YouTube上加载缩略图,但是如何选择每个视频存在的六个缩略图中的一个?使用xml加载特定的缩略图缩略图?

<media:thumbnail url='http://i.ytimg.com/vi/dTI0KDuQl_4/default.jpg' height='90' width='120' time='00:02:42' yt:name='default'/> 
<media:thumbnail url='http://i.ytimg.com/vi/dTI0KDuQl_4/mqdefault.jpg' height='180' width='320' yt:name='mqdefault'/> 
<media:thumbnail url='http://i.ytimg.com/vi/dTI0KDuQl_4/hqdefault.jpg' height='360' width='480' yt:name='hqdefault'/> 
<media:thumbnail url='http://i.ytimg.com/vi/dTI0KDuQl_4/1.jpg' height='90' width='120' time='00:01:21' yt:name='start'/> 
<media:thumbnail url='http://i.ytimg.com/vi/dTI0KDuQl_4/2.jpg' height='90' width='120' time='00:02:42' yt:name='middle'/> 
<media:thumbnail url='http://i.ytimg.com/vi/dTI0KDuQl_4/3.jpg' height='90' width='120' time='00:04:03' yt:name='end'/> 

例如,我想第三个(hqdefault)。

我尝试以下使用mwfeedparser:

else if ([currentPath isEqualToString:@"/feed/entry/media:group/media:thumbnail"]) { 
        NSArray *urlArray = [currentElementAttributes objectForKey:@"url"];     
        item.thumbnail = urlArray; 
        processed = YES; 
       } 

而且在我的视图控制器我进入:

NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:[[item.thumbnail objectAtIndex:3] URLString]]]; 
    cell.videoThumbnail.image = [UIImage imageWithData:data]; 

但它总是崩溃:/

回答

0

我想,如果你尝试异步图像这对下载图像在后台有用..... 下面的链接可能会给你一些想法,从背景下载你的图像逐一...

http://www.geekygoodness.com/2009/09/13/a-simple-cocoa-asynchronous-image-loader-class-to-use-in-your-iphone-app/

希望,这帮助你

+0

谢谢你,我会检查出来。这也会提高滚动的性能吗? – Year3000

+0

所以我查了一下,这对我来说不起作用,因为我解析的不仅仅是一个图像,我解析描述,标题等等。我设法拉了一个缩略图,它只是一种模糊,因为我的uiimageview是90x120,默认图像也是如此。我想拉第三个缩略图,所以它看起来很脆...... – Year3000

+0

是的,你的滚动会非常流畅,如果你想下载deffirent大小的图像,那么你必须用你自己的不同方法来管理大小,但如果你遵循异步图像,那么它对你非常有用,而且你的应用程序也会显示出吸引力和流畅。 –