0

我想覆盖UIImageViewContentMode所以我写了这段代码,但它似乎没有按预期工作。

class AspectFitUIImageView: UIImageView {

    override var contentMode: UIViewContentMode {
        get {
            return .scaleAspectFit
        }

        set {
            // contentMode = contentMode
        }
    }
}

谁能告诉我我错在哪里?

4

1 回答 1

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
}
于 2017-07-28T05:49:27.577 回答