2017-08-18 35 views
1

我有這個UIImageView如何添加一個覆蓋圖層到UIImageView,但不是在圖像的透明部分?

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

enter image description here

現在我想用這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

你需要玩混合模式。

蘋果文檔:link

相關的一些東西,這可能有助於:link1 link2

+0

謝謝您的回覆!得到它與這個解決方案一起工作:https://stackoverflow.com/a/42353385/2885727 – Someday