自定义 UICollectionViewCell class 识别但不工作
custom UICollectionViewCell class recognize but not working
我为我的 collectionview 单元实现了自定义 class。
class 识别标签等属性,但是当我 运行 我的应用程序时,标签文本不显示。
Class 是这样注册的:
self.collectionView!.registerClass(StatsCollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)
这里是自定义cell的初始化方法class:
var textlabel = UILabel()
override init(frame: CGRect) {
let width = frame.size.width
let height = frame.size.height
textlabel = UILabel(frame: CGRectMake(0, 0, width,height))
super.init(frame: frame)
}
和实施:
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! StatsCollectionViewCell
// Configure the cell
cell.textlabel.text = "test"
return cell
}
有人可以指出我的错误吗,我在这里有点迷路,看不出有什么问题。
请注意,我可以使用单元格属性(意味着单元格实际上就在这里)。
您没有将 textlabel
放入 view
。
override init(frame: CGRect) {
let width = frame.size.width
let height = frame.size.height
textlabel = UILabel(frame: CGRectMake(0, 0, width,height))
super.init(frame: frame)
addSubview(textlabel) // add text label to view
}
我为我的 collectionview 单元实现了自定义 class。 class 识别标签等属性,但是当我 运行 我的应用程序时,标签文本不显示。 Class 是这样注册的:
self.collectionView!.registerClass(StatsCollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)
这里是自定义cell的初始化方法class:
var textlabel = UILabel()
override init(frame: CGRect) {
let width = frame.size.width
let height = frame.size.height
textlabel = UILabel(frame: CGRectMake(0, 0, width,height))
super.init(frame: frame)
}
和实施:
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! StatsCollectionViewCell
// Configure the cell
cell.textlabel.text = "test"
return cell
}
有人可以指出我的错误吗,我在这里有点迷路,看不出有什么问题。
请注意,我可以使用单元格属性(意味着单元格实际上就在这里)。
您没有将 textlabel
放入 view
。
override init(frame: CGRect) {
let width = frame.size.width
let height = frame.size.height
textlabel = UILabel(frame: CGRectMake(0, 0, width,height))
super.init(frame: frame)
addSubview(textlabel) // add text label to view
}