【发布时间】:2016-05-01 20:19:06
【问题描述】:
我想在我的应用中使用模糊图像作为固定背景。我的 ViewController 结构是这样的:
HostViewController(带有背景图片和 VisualEffectView)
– NavigationController(以模式方式呈现在 HostViewController 上)
–– ViewController(背景颜色清晰)
当我想从 NavigationController 推送到另一个 ViewController(也具有清晰的背景颜色)时,新的 ViewController 会与通过新 ViewController 可见的第一个 ViewController 重叠。这看起来很奇怪和丑陋。我的问题是如何在没有 ViewController 相互重叠的情况下实现具有固定背景的推送动画?
您可以在 App Store 中的应用程序“TuneShell”中看到此效果的示例。
在此先感谢您,费边。
编辑: 为了澄清我的问题,我添加了这个 gif:
正如您在 gif 中看到的,当我推送到 Playlist-ViewController 时,rootViewController 在动画时通过新的 Playlist-ViewController 可见。我想解决这个问题。
我想要达到的目标:
【问题讨论】:
-
你必须在 -didFinishLaunching 里面的 AppDelegate.m 中添加窗口中的背景。
-
@0yeoj 谢谢,但这不是我真正的问题。我已经编辑了我的问题,以便您更好地理解我的问题。
-
啊..我明白了..你试过在
-viewWillDisappear里面设置self.view.alpha = 0吗? -
@0yeoj 是的,我试过了,但这不是我想要达到的效果。我再次编辑了我的问题。
-
视图的剪辑到边界属性可能未为第一个视图设置。如果你这样做,这将得到解决。您不必为了解决此问题而进行答案中提到的此类自定义。如果这就是你想要的。
标签: ios objective-c iphone xcode uiviewcontroller