UIVisualEffectView 背后的实现

iOS 8 苹果为我们带来了原生的毛玻璃效果的支持,即 UIVisualEffectView。 UIVisualEffectView *effectView = [[UIVisualEffectView alloc] initWithEffect:[UIBlurEffect effectWithStyle:UIBlurEffectStyleDark]]; 但它提供的 API 非常有限,能改的样式属性只有两个 effect 以及不多的几个 style,模糊效果也基本是非黑即白,模糊程度也不可调节。但有时候不关心实现的设计师们会要求某些地方模糊小一点之类的,此时一般就换自己用高斯模糊来做了,这里问题就来了,真的做不了吗? »

CALayer 的 filters

CALayer 上有一个属性,一直以来大家都容易忽视,即:filters。而苹果官方文档上只给了 CIFilter 的示例,但事实上 CIFilter 设置进去后并没有效果,同时下方也指明了在 iOS 上不支持。(这里是 CIFilter 的完整列表) @interface CALayer : NSObject <NSSecureCoding, CAMediaTiming> /* An array »