Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/108.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios swift中背景模糊,子视图清晰_Ios_Swift_Uiblureffect - Fatal编程技术网

Ios swift中背景模糊,子视图清晰

Ios swift中背景模糊,子视图清晰,ios,swift,uiblureffect,Ios,Swift,Uiblureffect,我想要一个模糊的背景。我有一个主视图的子视图。我希望子视图不受模糊的影响。我该怎么办 代码: 所以我希望视图模糊,帧视图清晰 这就是我的应用程序当前的外观。您必须在层次结构中添加上部框架,如您所见,BlurEffectView会模糊其中的每个子视图,因此请检查您是否正在将子视图添加到viewController的主视图中,并使用func bringSubView to front…) 我尝试了一个测试项目,我首先将模糊添加到mainView,然后将frameView添加到mainView,我看起

我想要一个模糊的背景。我有一个主视图的子视图。我希望子视图不受模糊的影响。我该怎么办

代码:

所以我希望视图模糊,帧视图清晰


这就是我的应用程序当前的外观。

您必须在层次结构中添加上部框架,如您所见,BlurEffectView会模糊其中的每个子视图,因此请检查您是否正在将子视图添加到viewController的主视图中,并使用func bringSubView to front…)

我尝试了一个测试项目,我首先将模糊添加到
mainView
,然后将
frameView
添加到
mainView
,我看起来不错,
frameView
不模糊

    let mainView = UIImageView.init(frame: self.view.bounds);
    mainView.image = UIImage.init(named: "a.png");
    let blurEffect = UIBlurEffect.init(style: .dark);
    let effectView = UIVisualEffectView.init(effect: blurEffect);
    effectView.frame = mainView.bounds;
    effectView.alpha = 1;

    let frameView = UIImageView.init(frame: CGRect.init(x: 0, y: 0, width: 200, height: 50));
    frameView.image = UIImage.init(named: "b.png");
    frameView.center = self.view.center;
    //add the blur view first
    mainView.addSubview(effectView);
    self.view.addSubview(mainView);
    self.view.addSubview(frameView);

我做到了。视图。带来子视图(toFront:FrameView),但没有更改。我将框架视图添加到主视图中。视图。添加子视图(框架视图)。我甚至尝试了view.insertSubview(blureffectview,在:#someindex)这也不起作用。你确定要将子视图添加到主视图而不是模糊视图吗?是的,我将框架视图更改为主视图的子视图是否要创建一个UIView--将你的blureffectview添加到自定义UIView将你的框架视图添加到mainUIVIewcontroller.view,更改视图hirarch可能重复@Savitha Suresh Check我在主视图上有一个视频预览层。如何执行此操作当FrameView存在时,是否希望MainView的视频播放器播放?如果没有,您可以将主视图截图为图像,并使用此功能将其模糊,将其设置为图像视图返回框架视图,它不会使框架视图模糊。是的,我希望它能够播放我已经测试了一个项目,它能帮到您吗?
    let mainView = UIImageView.init(frame: self.view.bounds);
    mainView.image = UIImage.init(named: "a.png");
    let blurEffect = UIBlurEffect.init(style: .dark);
    let effectView = UIVisualEffectView.init(effect: blurEffect);
    effectView.frame = mainView.bounds;
    effectView.alpha = 1;

    let frameView = UIImageView.init(frame: CGRect.init(x: 0, y: 0, width: 200, height: 50));
    frameView.image = UIImage.init(named: "b.png");
    frameView.center = self.view.center;
    //add the blur view first
    mainView.addSubview(effectView);
    self.view.addSubview(mainView);
    self.view.addSubview(frameView);