ios - UINaviagtionBar subview 在 UIViewController "Back"转换期间不会淡出

标签 ios uiviewcontroller uinavigationcontroller uinavigationbar subview

我有一个基于 UINavigationBar 的应用程序。我创建了一个带有一些标题的自定义 UIView,并将其作为 subview 添加到导航栏:

[self.navigationController.navigationBar addSubview:_navbarView];

一切正常,直到我点击导航栏中的后退按钮并发生 UIViewController 转换。

问题是我的自定义 View 不会像 UINavigationBar 中的其他元素一样消失,它只是保持不变并在转换完成时消失。 我希望它像 UINavigationBar 的原生元素一样在过渡期间逐渐消失,有什么办法可以实现吗?

最佳答案

如果你向导航栏添加 subview ,那么它就会停留在那里;导航 Controller 不知道用它做任何特别的事情。您说您的自定义 View 有“一些标题” - 您是否尝试过这样做?

self.navigationItem.titleView = _navbarView;

然后导航 Controller 知道应该使用 View 来代替 Controller 的标题,并且它应该以动画方式进出。

如果这不起作用,您需要考虑成为导航 Controller 的委托(delegate)。从 iOS7 开始,这可能会变得相当复杂。

关于ios - UINaviagtionBar subview 在 UIViewController "Back"转换期间不会淡出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22308077/

相关文章:

ios - UIWindow 方向问题(两个 UIWindows 和横向模式)

ios - Swift 仅在首次使用导航 Controller 启动时显示 View

ios - 如何在不导入第一个 UIViewController 类的情况下从 UINavigationController 中的另一个 UIViewController 手动释放 UIViewController?

python - 通过 ios_ui 查找元素不起作用

ios - mach_wait_until() iPad 上的奇怪行为

ios - 错误 :Storyboard doesn't contain a view controller with identifier 'jailBrokenViewController' '

iphone - UINavigationController,后退动画方向错误

ios - 使单元格不可点击,但其上的按钮仍应可点击

ios - Sharekit - Facebook 配置

swift popToRoot 不工作