ios - 页面控制在完全进入下一页之前切换页面
问题描述
我为集合视图创建了一个页面控件,每个集合视图单元格都是屏幕的高度和宽度。这是页面控件的设置:
// Setup the page control
func setupPageControl() {
pageControl.pageIndicatorTintColor = cellColor
pageControl.currentPageIndicatorTintColor = themeColor
view.addSubview(pageControl)
addPageControlConstraints()
}
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
pageControl.numberOfPages = collectionViewCellData.count
return collectionViewCellData.count
}
func collectionView(_ collectionView: UICollectionView, willDisplay cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
pageControl.currentPage = indexPath.row
}
页面控件有一个小问题,看看这个:
请注意,当我还没有完全进入下一页时,页面控件是如何变化的,我该如何解决这个问题?
解决方案
问题只是您在 willDisplay 单元格中设置页面控件的 currentPage ,文档说:
告诉委托指定的单元格即将显示在集合视图中。
这是在显示单元格之前调用的方法。
你应该scrollViewDidEndDecelerating(_ scrollView: UIScrollView)
为你的目的使用。
推荐阅读
- tailwind-css - Tailwind 如何修复侧边栏?
- python - 删除 SQL 中重复或不必要的别名
- angular - Bootstrap中的简单列排列
- javascript - 覆盖按钮只能在单独单击视频中心时启动视频,但在单击视频停止的任何部分时发生
- soundcloud - 如何根据其 URL 确定 Soundcloud 曲目是否为预览版 (Soundcloud GO)?
- actionscript - Google 翻译 Flash (SWF) 动作脚本
- javascript - React 获取组件属性
- php - 如何在 laravel 8 中保存嵌套的下拉菜单
- c# - 处理光标事件以启用或禁用覆盖窗口的直通
- java - 用逗号和换行加入字符串列表