gpt4 book ai didi

ios - 过渡期间导航栏右侧的 UI 故障(黑色闪烁)

转载 作者:行者123 更新时间:2023-11-28 05:30:46 27 4
gpt4 key购买 nike

我有一个应用程序,它有一个 uipageviewcontroller,在应用程序首次启动时显示。在 uipageviewcontroller 的最后一页上,我向主导航 Controller 展示了一个 TransitionCrossDissolve 动画。当动画正在进行时,我会在导航栏的右侧看到一个微小的黑色背景闪烁,如下所示:

uinavigationbar transition

一开始我的整个导航栏都是黑色的闪烁,但是调用之后

override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)

self.navigationController?.navigationBar.layer.removeAllAnimations()

}

问题几乎消失了。

她是调用 removeAllAnimations() 之前问题的 gif:

enter image description here

这是我在 uipageviewcontroller 的最后一页上调用动画的方式:

let appDelegate = UIApplication.sharedApplication().delegate as AppDelegate

UIView.transitionWithView(appDelegate.window!, duration: 0.5, options: UIViewAnimationOptions.TransitionCrossDissolve , animations: { () in

appDelegate.window!.rootViewController = appDelegate.mainNavigationController

}, completion: nil)

重要的是,我正在使用一个程序来移除导航栏底部的细线。这可能是所有这一切的原因吗​​?

引用: How to hide iOS7 UINavigationBar 1px bottom line

如果有任何关于此问题的反馈,我将不胜感激。

最佳答案

我能够通过移除导航栏所有 subview 上的动画来移除黑色 UI 故障。我认为问题出在正确的 UINavigationItem 上。这是我使用的代码:

let subviews = (self.navigationController?.navigationBar.subviews as [UIView])
for subview: UIView in subviews {
subview.layer.removeAllAnimations()
}

关于ios - 过渡期间导航栏右侧的 UI 故障(黑色闪烁),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28656107/

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