我正在将模糊效果添加到我的视图中:
UIBlurEffect *blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleDark];
UIVisualEffectView *blurEffectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
[blurEffectView setFrame:self.view.bounds];
[self.view addSubview:blurEffectView];
但是如何禁用/删除模糊?
答案 0 :(得分:2)
自UIVisualEffectView
子类UIView
开始,就像您将视觉效果视图添加到self.view
作为子视图一样,只需隐藏它(UIView
隐藏属性)或将其从子视图。
在您的情况下,我将添加一个实例变量,该变量引用视图中的blurEffectView
,以便您可以将其隐藏属性设置为true或false(如果需要)。
答案 1 :(得分:0)
可能存在blurView
有subViews
的情况(就像我的情况一样)并且基于某些条件blurEffect
必须启用/禁用。
在这种情况下,您无法隐藏blurView
,因为subViews
也会被隐藏。
解决方案:使用Alpha 1设置blurView的背景颜色(根据您的预期屏幕背景)。这样可以消除BlurEffect。
blurView.backgroundColor = UIColor.init(colorLiteralRed: 0.960, green: 0.960, blue: 1, alpha: 1)