UITableView 重新加载除一个以外的所有单元格
Posted
技术标签:
【中文标题】UITableView 重新加载除一个以外的所有单元格【英文标题】:UITableView reload all cells except one 【发布时间】:2015-02-22 14:45:34 【问题描述】:是否可以重新加载UITableView
中的所有单元格并排除其中一个?
我在每个单元格中都有一个 MPMoviePlayerController
,因为它是单例的 - 播放一个时 - 我需要调用所有其余的 initWithContentURL
来重置它们。
是否可以不迭代? (听起来效率不高)
【问题讨论】:
如果不遍历单元格,您认为 reload 会做什么?? @HotLicks - 那么我如何有效地自己完成它(并且不包括一个单元格) (调用init
方法来停止播放并不是一个非常明智的方法。)
(您可能需要实际查阅文档。)
如果您费心阅读此处提供的建设性答案,而不是仅仅抨击寻求帮助的人,您会理解的。但不要打扰。感谢您的“帮助”
【参考方案1】:
不,没有迭代是不可能的。 你的架构可能是错误的。显然,玩家不应该是单身人士。 如果您正在处理一个列表并且每个单元格都包含一个视频,那么您将拥有独特的播放器实例,或者您将拥有一些缩略图并且仅在您希望播放器播放某些内容时才诉诸显示播放器。
【讨论】:
我别无选择MPMoviePlayerController
- “虽然您可以创建多个 MPMoviePlayerController 对象并在界面中显示它们的视图,但一次只能播放一个电影播放器”。
播放一个,使之前播放的其他无效。这就是为什么我想调用 reload 并在缩略图后面为下一次点击做好准备
关键问题是您是否像 Facebook 应用程序那样在表格视图中静默同时播放多个视频。如果是,则 MPMoviePlayerController 不适合您。如果不是,那么所有这些过早的优化都是不必要的,您只需在点击单元格后初始化一个干净的播放器实例,并在播放完成后将其丢弃。
后者是场景,但是如果用户暂停我有问题......我需要让播放器保持活力......
如果暂停了,就暂停了。暂停它会导致它跳回表格视图吗?以上是关于UITableView 重新加载除一个以外的所有单元格的主要内容,如果未能解决你的问题,请参考以下文章
每次我重新加载 tableview 部分时 UITableView 都不会向上滚动
iOS UITableView reloadData 只更新我添加的最后一个条目,如何重新加载所有内容?