UITableViewCellの中でよくやってた、
override func layoutSubviews() { super.layoutSubviews() someView.layer.cornerRadius = someView.frame.height / 2.0 someView.clipsToBounds = true }
という書き方だとはViewが崩れたり、角丸にならなかったり、背景色が反映されなかったり(実際は反映されてるんだけどViewのサイズがおかしいからか見えない)する。
こう書けば良い、
override func awakeFromNib() { super.awakeFromNib() layoutIfNeeded() someView.layer.cornerRadius = someView.frame.height / 2.0 someView.clipsToBounds = true }
layoutIfNeeded()
を先に呼んでおけば良いらしいです。