我的UIView
包含UILabel
。 UIView
的大小会适应UILabel
的大小。
我希望UIView
成为一个圆圈,所以我设置了圆角半径:
view.clipToBounds = true
label.text = "123"
view.layer.cornerRadius = view.frame.size.height / 2
但是,如果我调用上面的代码,有时不会调整角半径。好像UIView
框架似乎没有改变它的尺寸。 UIView
位于UITableViewCell
顺便说一句。
答案 0 :(得分:1)
如果您不介意继承,则可以执行以下操作:
import UIKit
class RoundedView: UIView {
override func layoutSubviews() {
super.layoutSubviews()
layer.cornerRadius = frame.height / 2.0
}
}
这会在调整视图大小时将角半径调整到适当的高度。