gpt4 book ai didi

ios - 带 UIRefreshControl 的水平 UICollectionView

转载 作者:可可西里 更新时间:2023-11-01 03:41:59 26 4
gpt4 key购买 nike

我有一个包含 1 行的自定义水平 Collection View ,我想添加下拉刷新功能,默认情况下,该功能显示在我的单元格行上方。我希望用户能够从左向右拉动 Collection View 以激活 UIRefreshControl。有什么想法吗?

提前致谢。

最佳答案

基本上,上面的响应告诉您如何在 Objective-C 中在 UICollectionView 中加载更多内容。但是,我认为问题是如何在该组件上水平拉动刷新。

我不认为你可以水平添加 UIRefreshControl 但考虑到之前的代码并转换为 Swift 我想出了以下代码

不要忘记将您的 UICollectionView 反弹属性设置为 TRUE

func scrollViewDidScroll(scrollView: UIScrollView) {
let offset = scrollView.contentOffset
let inset = scrollView.contentInset
let y: CGFloat = offset.x - inset.left
let reload_distance: CGFloat = -75
if y < reload_distance{
scrollView.bounces = false
UIView.animateWithDuration(0.3, animations: { () -> Void in
scrollView.setContentOffset(CGPointMake(0, 0), animated: false)
}, completion: { (Bool) -> Void in
scrollView.bounces = true
})
}
}

此外,为了避免连续拉动出现问题,我添加了一些代码以暂时删除弹跳,将动画重新滚动回右侧,然后再次启用弹跳。这会给您带来与 UIRefreshControl 相同的效果。

最后,如果你想要一个加载图标,我的建议是将它添加到 Controller 后面,这样当你拉动时你可以在后面看到它

关于ios - 带 UIRefreshControl 的水平 UICollectionView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17259539/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com