我有一个collectionViewCell,我在其中添加了一个标签,我将约束间距设置为最近邻居(0,0,0,0),因此必须将所有单元格调整到其高度和宽度,但标签根本没有显示。
我意识到我放入collectionCell,如果我添加了一个约束,它就不会显示,所以我最终删除所有约束并手动设置标签的高度和宽度
CollectionViewCell:
import UIKit
class CollectionViewCell: UICollectionViewCell {
var text:String?
var delegate: TableViewCell?
@IBOutlet weak var label: UILabel!
override init(frame: CGRect) {
super.init(frame: frame)
loadFromNib() // load xib
let tap = UITapGestureRecognizer(target: self, action: #selector(tapFunc))
label.isUserInteractionEnabled = true
label.addGestureRecognizer(tap)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func tapFunc(_ sender: Any) {
// head will not be clickable cuz parent here gonna be nil
if let p = delegate {
if p.isUserInteractionEnabledWith(cell: self){
p.didTapeLabel(for: self, value: label.text!)
}
} else {
print("parent at collectionview cell is nil")
}
}
func fillOutData(_ text:String) {
label.text = text
}
}
我正在构建一个多列tableView: tableView - > tableViewCell - > CollectionView - > CollectionViewCell - >标签
答案 0 :(得分:0)
在UITableViewCell中为UICollectionView设置数据源和委托。
override func awakeFromNib() {
//collection View Delegates
self.collectionView.delegate = self
self.collectionView.dataSource = self
super.awakeFromNib()
}