首先我和斯威夫特一起工作。第二步,我做了加莱尔分机

extension CALayer
{
    func borderUIColor() -> UIColor? {
        return borderColor != nil ? UIColor(CGColor: borderColor!) : nil
    }

    func setBorderUIColor(color: UIColor) {
        borderColor = color.CGColor
    }
}

下面是这些属性的结果
xcode - 具有用户定义的运行时属性的圆形按钮-LMLPHP
结果:
xcode - 具有用户定义的运行时属性的圆形按钮-LMLPHP
我得到的那些角类尖峰的层属性可以帮助我。我是改变界限还是处理内容什么的。

最佳答案

用计算属性替换扩展方法,如下所示:

extension CALayer
{
    var borderUIColor(): UIColor? {
        get {
            return borderColor
        }

        set {
            borderColor = borderUIColor
        }
    }
}

如您所见,实际上根本不需要扩展——只需使用层的borderColor。将layer.borderUIColor运行时属性替换为layer.borderColor,并将layer.masksToBounds添加为true,以获得最佳效果。

10-08 14:59