检查collectionView是否滚动顶部

Evg*_*ban 0 objective-c ios

我需要知道,当我的collectionView点击屏幕顶部时.有很多类似的主题建议如下:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {

    if (scrollView.contentOffset.y == 0)
        NSLog(@"At the top");
}
Run Code Online (Sandbox Code Playgroud)

但是,它不适合我.我已collectionView声明如下:

@property (weak, nonatomic) IBOutlet UICollectionView *myCollectionView;

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {

    if (self.myCollectionView.contentOffset.y == 0)
        NSLog(@"At the top");
}
Run Code Online (Sandbox Code Playgroud)

也不行.代表是通过故事板设置的.

如何检测我的集合视图何时滚动到顶部?为什么那个方法没有调用?

小智 6

它应该工作,你的一定有问题collectionViewDelegate.因为UICollectionViewDelegate确认UIScrollViewDelegate.所以所有人都scrollViewDelegates应该合作collectionViewDelegate.

Apple Docs截图

尝试更改代码

@property (weak, nonatomic) IBOutlet UICollectionView *myCollectionView;

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {

if (scrollView.contentOffset.y == 0)
    NSLog(@"At the top");
}
Run Code Online (Sandbox Code Playgroud)