【发布时间】:2018-03-21 23:17:22
【问题描述】:
我在 collectionView 单元中实现了一个 collectionView。 让我们命名外部collectionView = collectionView(1) 和collectionView inside cell = collectionView(2) collectionView(2)中有滚动图片。
collectionView(1) 将垂直滚动,collectionView(2) 将水平滚动。
collectionView(2) 函数在 collectionView(1) Cell 文件中呈现。
我的问题是,当我滚动 collectionView(1) 时,图像卡在 collectionView(2) 之间
以下代码位于 CollectionViewCell 文件中。
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return self.imagesCount
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "HomePostImagesCollectionViewCell", for: indexPath)as! HomePostImagesCollectionViewCell
cell.image.image = UIImage(named: "\((indexPath as NSIndexPath).item % imagesCount)")
return cell
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
DispatchQueue.main.async {
let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
let vc = mainStoryboard.instantiateViewController(withIdentifier: "OpenPostViewController")as! OpenPostViewController
let navigationController = UIApplication.shared.keyWindow?.rootViewController as! UINavigationController
navigationController.pushViewController(vc, animated: true)
}
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
return 0
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
return 0
}
【问题讨论】:
-
你能展示你的代码吗?
-
@Adeel 我刚刚用代码更新了问题
-
您的代码似乎没问题。如果您可以分享
collectionView1的DataSource和问题的屏幕截图,可能有助于找出发生这种情况的原因。 -
@Adeel 我已经上传了图片。图像在滚动时卡在两者之间,否则它是完美的。我认为这是由于细胞的重复使用。
-
您的问题表明当您滚动collectionView1 时会出现问题。需要查看您尚未分享的collectionView1 的
DataSource。
标签: ios swift3 uiscrollview uicollectionviewcell collectionview