【发布时间】:2022-11-01 12:18:36
【问题描述】:
我有一个需要圆形的 UIView 子类。我遇到的问题是
此视图使用框架 .zero 实例化(并最终调整大小),当在初始化程序中调用 makeRound 时,会产生一个为 0 的 cornerRadius。
我应该调用哪个 UIView 生命周期方法 makeRound 并假设 layer.bounds 已采用其最终值(非零)?
fileprivate extension UIView {
func makeRound() {
layer.cornerRadius = layer.bounds.width*0.5
clipsToBounds = true
}
}
我可以使用的唯一 UIView 子类初始化程序是
public init() {
super.init(frame: .zero)
// init routines
}
【问题讨论】: