gpt4 book ai didi

ios - 按钮圆角的 UIBezierPath 无法正常工作

转载 作者:行者123 更新时间:2023-11-30 12:55:17 29 4
gpt4 key购买 nike

我为 UIButton 创建了一个类并覆盖 awakeFromNib。接下来(绿色按钮)使用此类。

“下一步”按钮(绿色的)右侧有一些空间。 iPad 上的这个空间会更多:

next button

override func awakeFromNib() {
super.awakeFromNib()

let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: [.TopLeft, .BottomLeft], cornerRadii: CGSizeMake(5, 5))

let maskLayer = CAShapeLayer()
maskLayer.path = path.CGPath
self.layer.mask = maskLayer

self.layer.borderColor = MyColor.nextButtonBorder.CGColor
}

最佳答案

您应该将此代码放入

layoutSubviews()

方法。不要忘记删除之前添加的 maskLayer。

完整示例:

override func layoutSubviews() {
super.layoutSubviews()
self.layer.mask = nil
let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: [.TopLeft, .BottomLeft], cornerRadii: CGSizeMake(5, 5))

let maskLayer = CAShapeLayer()
maskLayer.path = path.CGPath
self.layer.mask = maskLayer

self.layer.borderColor = MyColor.nextButtonBorder.CGColor
}

关于ios - 按钮圆角的 UIBezierPath 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40482943/

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