繁体   English   中英

iOS 7 UINavigationController推送动画阴影

[英]iOS 7 UINavigationController Push animation shadow

使用iOS 7,创建了一个新的推送动画,该动画将推送的视图控制器滑动到层次结构的顶部。 但是,当动画发生时,iOS显然会做两件事来修改顶视图控制器的设计:

添加了阴影:

动画时视图控制器的阴影

在底部视图控制器上覆盖一个灯光:

轻覆盖

在大多数应用中,这不是问题。 但是,我目前正在开发具有像素完美设计的应用程序,并且使用背景清晰的视图控制器。 但是此功能保持不变,并且灯光叠加层显示在视图控制器上。 因为背景是白色渐变,所以此光叠加层(在屏幕截图2上)非常明显,并且在动画完成时将其删除而没有动画,这使其非常引人注目且令人讨厌。

我知道我可以创建自定义动画和过渡,但是我想知道:

有什么方法可以删除(或修改)此光叠加层和阴影,而不必创建自定义过渡?

谢谢您的帮助。

这不是最优雅的解决方案,但是我已经看到人们使用UIImage动画来显示他们想要显示的内容。 因此,您可以:

  • 截屏传入的UIViewController
  • 动画UIImageView的到来
  • 调用pushViewController:animated:animated:传递NO animated:
  • 删除UIImageView
  • 再次强调一下,但这也许是适合您的方案的最佳解决方案。

    试试这个代理

    [[UIImageView appearanceWhenContainedIn:NSClassFromString(@"_UIParallaxDimmingView"), nil] setAlpha:0.0f];
    

    我不知道Apple是否允许这样做,因为它使用私有API。 应用提交后将更新。

    暂无
    暂无

    声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

     
    粤ICP备18138465号  © 2020-2024 STACKOOM.COM