UIImage 上的多个 CALayer 边框
Multiple CALayer borders on UIImage
我正在尝试为我的图像添加两个不同的边框图层。
我添加了第一个代码如下:
myImage.layer.borderColor = UIColor.blue.cgColor
myImage.layer.borderWidth = 2.0
myImage.roundLayerCorners()
当我做类似的事情时:
let sublayer: CALayer = CALayer()
sublayer.backgroundCOlor = UIColor.white.cgColor
sublayer.borderWith = 4.0
myImage.layer.addSublayer(sublayer)
它根本没有出现。为什么以及如何添加多个边框?
我想要一个 2 像素宽的蓝色边框,然后是一个 2 像素宽的白色边框
谢谢!
您的子图层没有框架。这意味着它不知道自己要做多大。你可以通过添加一行代码来解决这个问题:
sublayer.frame = CGRect(x:2, y: 2, width: myImage.frame.width - 4, height: myImage.frame.height - 4)
因此您的子层设置如下所示:
let sublayer: CALayer = CALayer()
sublayer.backgroundColor = UIColor.white.cgColor
sublayer.borderWidth = 4.0
sublayer.frame = CGRect(x:2, y: 2, width: myImage.frame.width - 4, height: myImage.frame.height - 4)
myImage.layer.addSublayer(sublayer)
我正在尝试为我的图像添加两个不同的边框图层。
我添加了第一个代码如下:
myImage.layer.borderColor = UIColor.blue.cgColor
myImage.layer.borderWidth = 2.0
myImage.roundLayerCorners()
当我做类似的事情时:
let sublayer: CALayer = CALayer()
sublayer.backgroundCOlor = UIColor.white.cgColor
sublayer.borderWith = 4.0
myImage.layer.addSublayer(sublayer)
它根本没有出现。为什么以及如何添加多个边框?
我想要一个 2 像素宽的蓝色边框,然后是一个 2 像素宽的白色边框
谢谢!
您的子图层没有框架。这意味着它不知道自己要做多大。你可以通过添加一行代码来解决这个问题:
sublayer.frame = CGRect(x:2, y: 2, width: myImage.frame.width - 4, height: myImage.frame.height - 4)
因此您的子层设置如下所示:
let sublayer: CALayer = CALayer()
sublayer.backgroundColor = UIColor.white.cgColor
sublayer.borderWidth = 4.0
sublayer.frame = CGRect(x:2, y: 2, width: myImage.frame.width - 4, height: myImage.frame.height - 4)
myImage.layer.addSublayer(sublayer)