Ios 在Swift中应用混合模式

Ios 在Swift中应用混合模式,ios,swift,blending,Ios,Swift,Blending,我要做的是把纯白色背景的图标转换成混合背景的图标 图标背后的背景并不重要,我想实现的是应用于图标的效果。该图标是使用Photoshop中的柔和灯光混合模式创建的。我想在iOS中重新创建它 这是我尝试过的代码,灵感来自: 我使用的是drawHierarchyInRect()而不是CALayer.renderContext(),因为有人告诉我,从性能角度看,它要快得多。不管怎样,无论哪种方法最终都会得到相同的结果。图标不变(保留其纯白背景)。我做错了什么?您可以尝试为按钮的图像应用不同的渲染模式 c

我要做的是把纯白色背景的图标转换成混合背景的图标

图标背后的背景并不重要,我想实现的是应用于图标的效果。该图标是使用Photoshop中的
柔和灯光
混合模式创建的。我想在iOS中重新创建它

这是我尝试过的代码,灵感来自:


我使用的是
drawHierarchyInRect()
而不是
CALayer.renderContext()
,因为有人告诉我,从性能角度看,它要快得多。不管怎样,无论哪种方法最终都会得到相同的结果。图标不变(保留其纯白背景)。我做错了什么?

您可以尝试为按钮的图像应用不同的渲染模式

cogButton.setBackgroundImage(UIImage(named:"Cog")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate), forState: .Normal)

不幸的是,这只会导致:(谢谢你的尝试。
cogButton.setBackgroundImage(UIImage(named:"Cog")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate), forState: .Normal)