ios - 将 uipagecontrol 连接到我的整个 uicollectionview,而不是单个单元格

标签 ios swift uicollectionview uipagecontrol

我有一个 UICollectionView(在 UIViewController 中),每页显示 20 个单元格/图像。我已将 UICollectionView 的滚动方向设置为水平,并将布局设置为流动。我已启用滚动分页。因此,当我有超过 20 个单元格/图像时,我可以水平滑动以翻页到下一批单元格/图像。 这非常有效!

但是,我现在想做的是添加一种方法来显示有多少页面可用以及我当前所在的页面。我认为 UIPageControl 是正确的选择,因此我将它很好地放置在 UICollectionView 下方。

问题是:如何将 UIPageControl 连接到现有的滚动/分页 UICollectionView

期待您的回复。

最佳答案

Collection View (因为它是一种 ScrollView )允许 vc 成为 ScrollView 委托(delegate)。将 delegate 设置为您的 vc,并实现 scrollViewDidScroll。其中,通过向 Collection View 询问 indexPathsOfVisibleCells 来计算页面。对于返回数组中的任何索引路径,您可以使用 indexPath.row/20 计算当前页面。

页面控件允许您将 currentPagenumberOfPages 设置为属性。如果我正确理解您的设置,则 numberOfPages == 数据源数组计数/20。

关于ios - 将 uipagecontrol 连接到我的整个 uicollectionview,而不是单个单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53771568/

相关文章:

ios - SwiftUI 中的 textFieldDidBeginEditing 和 textFieldDidEndEditing

swift - iOS 10. 核心数据插入新对象 sigABRT

javascript - 在加载外部网站的 UIWebView 上运行 Javascript

iOS:UIView 动画忽略延迟

ios - 我应该如何构建我的数组

iphone - 从核心数据加载 UICollectionView

ios - UICollectionViewCell 在滚动时消失

swift - 如何使用 swift 在点击时更改 UIcollectionViewCell 的背景颜色?

ios - UIImagePickerController 不压缩视频

ios - 尝试将框架 (Chameleon) 导入 Xcode (Swift) 时出现各种错误