Vesper如何在没有UIApplicationIsOpaque键的情况下向用户显示壁纸?

Max*_*ral 12 uiwindow uiapplication ios7

一个名为Vesper的应用程序已针对iOS 7进行了更新,并在iOS 7上显示了用户的壁纸.我发现使用UIApplicationIsOpaque键和UIBackgroundStyleLightBlur可以显示用户背景,但不会通过验证.Vesper通过验证并通过Apple.我确实将这个问题上传到开发论坛,但苹果已经把它删除了.

Enr*_*tyo 9

布伦特西蒙斯写了一篇博客文章来解释它.好像他们没有使用UIApplicationIsOpaque键.

补充工具栏

在1.0中,我们的侧边栏菜单包括一些顶部和底部填充,以融入状态栏的黑色 - 以及列表视图中的一抹阴影 - 给人一种深度感,就好像侧边栏总是坐在后面列表显示.iOS 7的统一状态栏意味着我们没有相同的黑色可以玩,所以我们不得不重新考虑我们的方法.我们开始关注Apple内置的iOS 7应用程序,以获得灵感,我们跳出了两件事:Safari和Passbook.

在Safari中,当您点击打开页面视图时,您可以看到自己的主屏幕壁纸在后台模糊.它很微妙,但它是一个非常好的触摸.

我们喜欢这个想法,并希望在侧边栏中试一试,看看它的外观.由于Apple没有为图像的实时模糊提供API,因此我们设法通过在侧边栏视图后面放置一个巨大的实时模糊工具栏来伪造它.它在iPhone 5上看起来很棒,但在旧手机上根本不支持实时模糊,侧边栏又回到使用不显眼的主屏幕.

与此同时,Passbook的传递漂浮在一个不模糊(但黑暗)的主屏幕上,让他们感觉更像是在多任务视图中的应用程序上漂浮在壁纸上的小部件.我们决定尝试这种方法,看看哪些方法有效.

我们经历了大量的迭代,为有色窗口视图和所选状态找到了正确的不透明度.无论我们做了什么,无论用户的壁纸如何都需要看起来很好,效果应该是令人愉快的,但不能分散注意力.毕竟,这是一个菜单.为了使事情适当地加权,我们还选择不使用iOS 7-ify侧边栏图标.他们应该感到有点沉重才能脱颖而出.

什么开始作为"哦废话,我们要做什么"设计问题变成了我们在整个应用程序中最喜欢的视图.它不仅看起来很整洁(特别是主屏幕视差效果给出的深度感),但它给了Vesper人性化的感觉.当你打开侧边栏时,你会看到自己的壁纸.你选择的东西.感觉很个人化.而且,它对iOS 7来说非常真实.

不幸的是,直到为时已晚,我们还没有意识到,实现这种效果所需的API没有被Apple公司记录.我们已经提交了适当的雷达并向Apple的人们提出了要求.我们希望API很快就可以使用,我们可以回到我们认为非常棒的设计.