什么时候`UICollectionView`结束了

000*_*000 11 objective-c uibutton uiscrollview ios uicollectionview

我使用a UICollectionView并使用a UIButton从单元格滚动到单元格.当我来到集合视图的末尾时,我想要button.hidden = YES.我怎么知道currentIndex == MAX

jrt*_*ton 7

集合视图是滚动视图.因此,您可以访问所有滚动视图委托方法 - scrollViewDidScroll:每次滚动视图移动时都会调用它们,如果您已滚动到底部,结束或任何地方,则可以检查该点.

请注意,该contentOffset属性将引用可见滚动区域的原点,因此最简单的方法是检查以下内容:

if (CGRectGetMaxY(scrollView.bounds) == scrollView.contentSize.height) {
    button.hidden = YES;
}
Run Code Online (Sandbox Code Playgroud)

如果您自己滚动视图,则不会调用此委托方法,但只有在用户滚动视图时才会应用此方法.您需要在自动滚动代码的末尾自己调用它,或者在自动滚动代码中使用类似的逻辑来自行检查.


RJi*_*yes 4

您可以通过使用 if 语句检查当前 indexPath 是否显示数据源数组中的最后一个对象来了解。

if(indexPath.row == [dataSourceArray count]){
//Last cell was drawn
}
Run Code Online (Sandbox Code Playgroud)