简体   繁体   中英

UIcollectionview inside UIcollectionviewcell and how to display data

I need to create a collectionView A contains few types of cells. One of the cell contains collectionView B that can scroll horizontally. So collectionView A will scroll vertically.

Can I know how to create it and how to display the data into collectionView B ?

Thanks again guys

Collection A have Cells lets call our target cell as ASubCell

then at ASubCell we will have Collection B with all of its delegate , and you will create delegate say ASubCellDelegate to send action on Collection B to ViewController of Collection A , here example

import UIKit

protocol ASubCellDelegate {
    // CollectionView Cell Pressed
    func onSubCellAtcolectionBPressed(_item : YourData)
}
class ASubCell: UICollectionViewCell {

    @IBOutlet weak var collectionViewB : UICollectionView!
     var delegate : ASubCellDelegate?

    override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
        // setup your Collection View B
    }

}


// set up your horizontal Collection View
extension UICollectionViewCell:UICollectionViewDelegate,UICollectionViewDataSource {
    public func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return 10
    }
    public func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
       let cell  =  collectionView.dequeueReusableCell(withReuseIdentifier: "YourBCellID", for: indexPath) as! YourBCellID
        return cell
    }
    public func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {

        if delegate != nil {
            self.onSubCellAtcolectionBPressed(YourData)
        }
    }

}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM