gpt4 book ai didi

iphone - iOS 7 动态模糊效果,如控制中心

转载 作者:IT老高 更新时间:2023-10-28 11:50:30 36 4
gpt4 key购买 nike

我正在尝试制作一个类似于 iOS7 中的控制中心的 Controller 。从 WWDC session #226 我学会了如何获得具有不同效果的模糊图像

UIGraphicsBeginImageContextWithOptions(image.size, NULL, 0);

[view drawViewHierarchyInRect:rect];

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();

lightImage = [newImage applyLightEffect];

所以,换句话说,我们只是捕捉一些图像(制作屏幕截图),执行模糊效果并使用这个模糊的图像来满足我们的需要。

但是如果您在一些动态内容上方打开控制中心,您会注意到控制中心的模糊背景和内容一样发生变化。

有人知道如何复制这种行为吗?

我看到它的唯一方法是捕捉内容并以一定的间隔(例如半秒)制作模糊效果。但它看起来是多余的。

最佳答案

以下是我找到的现成解决方案:

1.最意想不到的:使用 UIToolBar

- (id) initWithFrame:(CGRect)frame
{
if ((self = [super initWithFrame:frame]))
{
[self setup];
}
return self;
}

- (id) initWithCoder:(NSCoder *)coder
{
if ((self = [super initWithCoder:coder]))
{
[self setup];
}
return self;
}

- (void) setup
{
if (iOS7OrLater)
{
self.opaque = NO;
self.backgroundColor = [UIColor clearColor];

UIToolbar *toolbar = [[UIToolbar alloc] initWithFrame:self.bounds];
toolbar.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
toolbar.barTintColor = self.tintColor;
[self insertSubview:toolbar atIndex:0];
}
}

UIToolbar 可以满足这个需求,因为它有他唯一的内置模糊机制,而且这个机制是动态的,有什么好处。但不好的是,它在某些方面会忽略颜色并使背景看起来无可救药......

Toolbar effect

更新:

为避免颜色中断,请勿使用 barTintColor。如果你想要深色风格的模糊,你也可以改变工具栏的风格(使用 UIBarStyleBlack)。

<强>2。 FXBlurView .

不像工具栏它更积极,但它的动态机制还很少见,实际上它只能用于静态背景。 (动态 = 否)。

FBBlurView effect

关于iphone - iOS 7 动态模糊效果,如控制中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17704240/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com