我想覆盖 UIImageView 的 ContentMode ,所以我编写了这段代码,但它似乎没有按预期工作。
class AspectFitUIImageView: UIImageView {
override var contentMode: UIViewContentMode {
get {
return .scaleAspectFit
}
set {
// contentMode = contentMode
}
}
}
任何人都可以告诉我哪里错了吗?
答案 0 :(得分:0)
你应该在awakeFromNib()中设置contentMode,如下所示:
class AspectFitUIImageView: UIImageView {
override func awakeFromNib() {
super.awakeFromNib()
contentMode = .scaleAspectFit
}
}
或者,如果您不打算使用Nib或Storyboard,则可以使用以下内容:
override init(frame: CGRect) {
super.init(frame: frame)
contentMode = .scaleAspectFit
}