我想覆盖 UIImageView 的 ContentMode,所以我编写了这段代码,但它似乎没有按预期工作。
class AspectFitUIImageView: UIImageView {
override var contentMode: UIViewContentMode {
get {
return .scaleAspectFit
}
set {
// contentMode = contentMode
}
}
}
谁能告诉我哪里错了?
最佳答案
您应该像这样在 awakeFromNib() 中设置 contentMode:
class AspectFitUIImageView: UIImageView {
override func awakeFromNib() {
super.awakeFromNib()
contentMode = .scaleAspectFit
}
}
或者,如果您不打算使用 Nib 或 Storyboard,则可以使用以下内容:
override init(frame: CGRect) {
super.init(frame: frame)
contentMode = .scaleAspectFit
}
关于swift - 快速覆盖类的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45365640/