APP界面黑白化处理比较简单的方式就是在UIView
上加一个遮罩,我们定义了UKOverlayView
来实现这一功能
@implementation UKOverlayView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self setupInitialUI];
}
return self;
}
- (void)setupInitialUI {
if (@available(iOS 13.0, *)) {
self.translatesAutoresizingMaskIntoConstraints = false;
self.backgroundColor = [UIColor lightGrayColor];
self.layer.compositingFilter = @"saturationBlendMode";
self.layer.zPosition = FLT_MAX;
}
}
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
return nil;
}
@end