创建自定义UICollectionViewCell

时间:2018-06-28 19:24:50

标签: uicollectionviewcell

我在填充自定义UICollectionViewCell时遇到一个非常奇怪的问题。这是我的UICollectionViewCell子类:

  class AdvancedPortraitCell: UICollectionViewCell {

  var button = UIButton()

  private let theme: CalculatorThemes = CalculatorThemes.sharedStore()

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

    button.translatesAutoresizingMaskIntoConstraints = false
    button.titleLabel?.textColor = UIColor.white

    addSubview(button)

    button.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true
    button.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true
    button.topAnchor.constraint(equalTo: topAnchor).isActive = true
    button.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true
  }

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

  func populateCell(with data: MyUIButtonToggle) -> Void {
    button.setTitle(data.titleLabel?.text, for: .normal)
    button.setAttributedTitle(data.titleLabel?.attributedText, for: .normal)
    button.titleLabel?.font = UIFont.systemFont(ofSize: 40)
  }
}

我的问题是titleLabel的字体没有更新。我在上面设置了一个断点

button.titleLabel?.font = UIFont.systemFont(ofSize: 40)

并在调试器中检查分配前后的button.titleLabel?.font及其相同的对象(即:相同的地址!)。

为什么会这样?

通常,UICollectionView可以正常工作。我只是没有让按钮以正确的字体大小显示。

0 个答案:

没有答案