滚动浏览UITableViewCell以查看新内容

时间:2013-07-23 04:34:14

标签: ios objective-c cocoa-touch uitableview

如何在下载后自动显示视频,而无需滚动浏览单元格,然后向上滚动查看该视频?

在tableview中,我有一系列AVPlayer视频。

在每个单元格(cellForRowAtIndexPath方法)中,我有以下代码来生成AVPlayer要播放的资源

AVURLAsset *asset = [AVURLAsset URLAssetWithURL:[self getURL:someURLString] options:nil];

的getURL

  • 如果视频存储在本地,则返回本地网址
  • 如果视频是远程存储的,它会将视频数据下载到 本地URL,然后返回本地URL

我遇到的问题是,当下载视频时,我必须滚过单元格,然后再次向上滚动以查看它。 (当视频已经存储在本地时,这不会发生)

我使用了setNeedsDisplayreloadRowsAtIndexPath等方法。但他们没有工作。

感谢您的帮助! :)


UITableViewCell由于某种原因在cellForRowAtIndexPath期间停止,在这种意义上,当返回本地URL时,它会尝试访问旧版本的本地URL(在调用cellForRowAtIndexPath之前)? (只是一个疯狂的猜测?)


临时解决方案:

你能否建议一种更好的方式来下载视频(每个视频只有200KB左右)而不是cellForRowAtIndexPath,因为这似乎不起作用?

1 个答案:

答案 0 :(得分:1)

您还可以获取对UITableViewCell对象的引用并更改其内容等。

UITableViewCell *cell = [self.tableView cellForRowAtIndexPath:indexPath];
cell.textLabel.text = @"Hey, I've changed!";