如何将覆盖图层添加到UIImageView而不是图像的透明部分?

时间:2017-08-18 17:43:33

标签: ios uiimageview layer

我有UIImageView

self.princessImageView.image = UIImage(named: "princess")!

enter image description here

现在我正在尝试在此图像上添加alpha为0.3的彩色图层。我试过这个:

let overlayView: UIView = UIView(frame: CGRect(x: 0,
                                               y: 0,
                                               width: self.princessImageView.frame.size.width,
                                               height: self.princessImageView.frame.size.height))
overlayView.backgroundColor = UIColor.blue.withAlphaComponent(0.3)
self.princessImageView.addSubview(overlayView)

但我得到了这个结果。

enter image description here

我理解当然是因为我在整个视图中设置了叠加层。有什么办法可以让我只在图像的非透明部分设置叠加层吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您需要使用混合模式。

Apple文档:link

可能会有所帮助的一些相关内容:link1 link2