hidesBottomBarWhenPushed 第一次被延迟

Posted

技术标签:

【中文标题】hidesBottomBarWhenPushed 第一次被延迟【英文标题】:hidesBottomBarWhenPushed is being delayed for the first time 【发布时间】:2018-05-10 07:41:02 【问题描述】:

我正在推动这样的视图控制器:

let editProfileViewController = EditProfileViewController()
editProfileViewController.hidesBottomBarWhenPushed = true
navigationController?.pushViewController(editProfileViewController, animated: true)

但是当第一次推送任何 viewController 时 - 标签栏不会隐藏,直到推送动画完全完成,它只会发生一次,之后即使是我之前没有推送过的控制器 - 也有正常行为。

我有UITabBarController 的子类,也许它与backgroundColor 有关系?我尝试将其设置为UITabBarController,但没有任何改变。 如果我将animated 更改为false,那么一切正常

【问题讨论】:

【参考方案1】:

我在这里找到了答案:

https://***.com/a/48198123/7707927

问题是,我在子类“UITabBarController”的“viewDidLayoutSubviews”中计算 TabBar 高度

【讨论】:

以上是关于hidesBottomBarWhenPushed 第一次被延迟的主要内容,如果未能解决你的问题,请参考以下文章

使用 hidesBottomBarWhenPushed 在 pop 上显示标签栏

为啥使用半透明导航栏刹车推动动画将“hidesBottomBarWhenPushed”设置为 YES?

hidesBottomBarWhenPushed 永远隐藏 TabBar

如何使用 iOS 6 SDK 解决 hidesBottomBarWhenPushed 的奇怪行为?

当 hidesBottomBarWhenPushed = YES 状态恢复时,导航控制器不隐藏标签栏

带有 UINavigationController 的 UITabBarController,在 hidesBottomBarWhenPushed 上隐藏 UINavigationController