首页 > 解决方案 > 如何在swift的两个collectionview中使用一个.xib单元格

问题描述

我已经为collectionview设计了一个xib单元,但是我需要在一个viewcontroller中的两个collectionview中进行相同的设计,如何使用?

常见的一个xib类:

import UIKit

class MainCollectionViewCell: UICollectionViewCell {
@IBOutlet weak var imgProduct: UIImageView!
@IBOutlet weak var lblTitle: UILabel!
@IBOutlet weak var lbRealPrice: UILabel!
@IBOutlet weak var lblDiscountedPrice: UILabel!
@IBOutlet weak var lblLine: UILabel!
@IBOutlet weak var lblOff: UILabel!
@IBOutlet weak var imgOff: UIImageView!

override func awakeFromNib() {
    super.awakeFromNib()
}
}

对于一个collectionview,我将编写这样的代码,但我需要在其中使用相同的xib单元collectionViewTwo,如何

我以前没有研究过这个概念..所以我不知道这是否可能

如果可能怎么办?我想在两个集合视图中使用相同的设计

  class ViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource,UICollectionViewDelegateFlowLayout{

@IBOutlet var collectionView: UICollectionView!
@IBOutlet var collectionViewTwo: UICollectionView!

override func viewDidLoad() {

    super.viewDidLoad()
    let nib = UINib(nibName: "MainCollectionViewCell", bundle: nil)
    collectionView.registerNib(nib, forCellWithReuseIdentifier: "MainCollectionViewCell")
 
}
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
    return count
}

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {

    let cell = collectionView.dequeueReusableCellWithReuseIdentifier("yourItemView", forIndexPath: indexPath) as! yourItemView
    return cell
}

标签: swiftuicollectionviewxibviewcontroller

解决方案


推荐阅读