嗨,我是 ios 开发的新手,我正在使用 collectionview
一次显示一个单元格并水平滚动(就像画廊一样),我想做的是当单元格滚动并且单元格 0 和单元格 1 显示在屏幕的一半上时更改屏幕上显示的标签-一半。
目前,当滚动停止时,标签中的文本会发生变化。
我正在使用func scrollViewDidEndDecelerating(_ scrollView: UIScrollView)
编辑1:
func scrollViewDidEndDecelerating(_ scrollView: UIScrollView) {
let visibleRect = CGRect(origin: imageCollectionView.contentOffset, size: (imageCollectionView.bounds.size))
let visiblePoint = CGPoint(x: visibleRect.midX, y: visibleRect.midY)
let indexPath : IndexPath = imageCollectionView.indexPathForItem(at: visiblePoint)!
lblUserName.text = arrayImageData[indexPath.row]["userName"] as! String?
lblTime.text = arrayImageData[indexPath.row]["time"] as! String?
imgProfilePic.kf.setImage(with: arrayImageData[indexPath.row]["profilePic"] as! Resource?)
}
最佳答案
您只需要实现 scrollViewDidScroll
即可。
关于ios - 如何知道collectionview单元在设备屏幕上的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43469690/