gpt4 book ai didi

swift - 如何制作自定义圆形 UIImageView 子类?

转载 作者:搜寻专家 更新时间:2023-10-30 22:04:55 26 4
gpt4 key购买 nike

我想制作我的自定义回合 UIImageView 并在 Storyboard 中显示它。

接下来我做了:

@IBDesignable
class RoundedImageView: UIImageView {
override init(image: UIImage?) {
super.init(image: image)
super.layer.cornerRadius = super.frame.size.height / 2
self.layer.cornerRadius = self.frame.size.height / 2
}

override init(frame: CGRect) {
super.init(frame: frame)
super.layer.cornerRadius = super.frame.size.height / 2
self.layer.cornerRadius = self.frame.size.height / 2
}

required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
super.layer.cornerRadius = super.frame.size.height / 2
self.layer.cornerRadius = self.frame.size.height / 2
}
}

而我在 Storyboard中的 imageView 是选择了 RoundedImageView 类。但在 Storyboard 中它仍然显示为矩形。我怎样才能意识到呢?当我运行代码时,它是四舍五入的。谢谢

最佳答案

您应该在应用布局之后设置半径。

@IBDesignable
class RoundedImageView: UIImageView {
override init(image: UIImage?) {
super.init(image: image)
}

override init(frame: CGRect) {
super.init(frame: frame)
}

required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}

override func layoutSubviews() {
super.layoutSubviews()
self.layer.cornerRadius = self.frame.size.height / 2
self.clipsToBounds = true
}
}

关于swift - 如何制作自定义圆形 UIImageView 子类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43491875/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com