得到的UIView在FXBlurView单独的类(getting UIView in separat

2019-10-20 09:28发布

我使用FXBlurView但我在上面的动画时blurView接收下来一个奇怪的黑线。

我有一个UITable是3/4了ViewController中,这是其余的图像。 正在发生的事情是,它是只拿起UITable ,而不是图像,在上海华。 那么,有没有办法让superview拿起两者兼而有之? 或更换?

我已阅读,这可以通过固定与实际的UIView更换上海华

FXBlurView默认捕捉其立即上海华盈的内容。 如果上海华是透明的或部分透明的,它后面示出的内容将不会被捕获。 您可以覆盖underlyingView财产,如果你需要以捕捉不同的视图的内容。

FXBlurView.m代码是:

- (UIView *)underlyingView
{
    return _underlyingView ?: self.superview;
}

我曾经尝试这样做:

((FXBlurView *)self.Genres).underlyingView = _main_view;

但是这并没有区别

其中ImagesTableViewController是我的主ViewController包含所迷离的UIView和一个我要复制( main_view

但是,这只是创建了所迷离的UIView白色的页面。

Answer 1:

首先你不应该需要在所有编辑FXBlurView源。

其次我想黑条是没有得到拿起视图层次结构的一部分。 也许一个导航栏? 你可以尝试添加模糊视图窗口,而不是视图,以便你抢的一切:

[[[UIApplication sharedApplication] keyWindow] addSubview: blurView];

如果做不到这一点,我能想到的唯一劈将是使,抓住用的窗前,仿佛它像一个ImageView的:

- (UIImage *)screenGrab:(id) theView {

   CGRect rect = [self.view bounds];

    UIGraphicsBeginImageContext(rect.size);
    CGContextRef context = UIGraphicsGetCurrentContext();
    [theView.layer renderInContext:context];   
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return image;
}

有:

[self screenGrab: [[UIApplication sharedApplication] keyWindow]];

然后设置imageView.image到抓取的图像,并设置此作为底层视图。 你不应该需要做的虽然:)

如果做不到这一点我需要看到更多的代码来了解视图层次结构。



文章来源: getting UIView in separate class for FXBlurView