集合视图中的ScrollTo indexPath集合视图单元格(嵌套CollectionView)

时间:2018-01-05 02:01:03

标签: swift uicollectionview uicollectionviewcell collectionview

我在另一个集合视图单元格中使用集合视图。现在我想滚动到内部集合View的indexPath。如果你知道的话请帮助我。Nested CollectionView - Need scroll to red cell

基于上面的图像,我想自动将集合视图滚动到嵌套集合视图中的红色单元格。假设嵌套集合视图是Main collectionView中的一个部分。

1 个答案:

答案 0 :(得分:0)

尝试使用对此集合视图的引用。

假设您包含内部UICollectionView的UICollectionView名为YourInnerCollectionViewCell,它将类似于:

let innerCollectionViewCellId = "innerCollectionViewCellId"

class MainCollectionView : UICollectionViewController {

    var innerCollectionViewCell: YourInnerCollectionViewCell?

    override func viewDidLoad() {
        super.viewDidLoad()

        collectionView?.delegate = self
        collectionView?.dataSource = self
    }

    override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
        switch indexPath.row {
        case 2:
            let cell = collectionView.dequeueReusableCell(withReuseIdentifier: innerCollectionViewCellId, for: indexPath) as! YourInnerCollectionViewCell
            self.innerCollectionViewCell = cell
            return cell
        default:
            // return other cell
        }
    }

    ....

}

class YourInnerCollectionViewCell: UICollectionViewCell {

    override init(frame: CGRect){
        super.init(frame: frame)
    }

    required init?(coder aDecoder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
}

现在你有了对这个单元格的引用,你可以访问它中的collectionView并执行scrollTo。

希望有所帮助。