UIRefreshControl(从左到右拉动刷新)概念在UICollection水平查看



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

为此

,您需要实现UIScrollViewDelegate方法

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
     CGPoint offset = scrollView.contentOffset;
     CGRect bounds = scrollView.bounds;
     CGSize size = scrollView.contentSize;
     UIEdgeInsets inset = scrollView.contentInset;
     float y = offset.x + bounds.size.width - inset.right;
     float h = size.width;

    float reload_distance = 75; //distance for which you want to load more
    if(y > h + reload_distance) {
     // write your code getting the more data
       NSLog(@"load more rows");
    }

}

更新了 Swift 5.0 的 Nitin's 答案

 override func scrollViewDidScroll(_ scrollView: UIScrollView) {
            let offset = scrollView.contentOffset
            let bounds = scrollView.bounds
            let size = scrollView.contentSize
            let inset = scrollView.contentInset
            let y = offset.x + bounds.size.width - inset.right
            let h = size.width
            
            let reload_distance = 75 //distance for which you want to load more
            if y > h + CGFloat(reload_distance) {
                //reload
                reload()
            }
            
        }
使用此

http://code4app.net/ios/RefreshView/5247b46b6803fa7304000000.it 用于刷新视图,以同样的方式刷新集合视图。

最新更新