CollectionView 标题在滚动时停止刷新/重新加载数据
Posted
技术标签:
【中文标题】CollectionView 标题在滚动时停止刷新/重新加载数据【英文标题】:CollectionView header stop refreshing/ reloading data when is scrolled 【发布时间】:2017-06-12 11:14:36 【问题描述】:有没有办法在集合视图中停止刷新我的标题上的数据? 我的集合视图中的标题包含不会将它们从视图中带走的数据和按钮。当您向下滚动时,集合视图会重新加载数据,并且我的集合视图标题上的任何激活按钮都会被停用。 如何在标题底部到达导航控制器下方之前停止刷新标题上的数据?或类似的东西,以便有足够的时间查看标题上的信息。
【问题讨论】:
问题解决了吗? 【参考方案1】:如果您不想重新加载您的 collectionview,您可以使用 UICollectionView 的 reloadSections 或 reloadItemsAtIndexpaths 内置方法
【讨论】:
【参考方案2】:当你的标题结束显示时,它会调用你可以在隐藏后执行你的任务:-
func collectionView(collectionView: UICollectionView, didEndDisplayingSupplementaryView view: UICollectionReusableView, forElementOfKind elementKind: String, atIndexPath indexPath: NSIndexPath)
或
你可以使用 dispatch_after 足够长的时间,比如 1 秒后你可以做任何事情:-
let delayTime = dispatch_time(DISPATCH_TIME_NOW, Int64(1 * Double(NSEC_PER_SEC)))
dispatch_after(delayTime, dispatch_get_main_queue())
print("test")
【讨论】:
【参考方案3】:你想停止重新加载collectionView的headerView,这是违反代码流的。不要这样做。
如何实现你的目标?
将它保存在任何地方。您可以使用 NSUserDefaults 来保存按钮的激活或停用状态。
【讨论】:
以上是关于CollectionView 标题在滚动时停止刷新/重新加载数据的主要内容,如果未能解决你的问题,请参考以下文章
CollectionViewCell 顶部的按钮使 collectionView 停止滚动