推送 UITabBarController 导致 UITabBar 在 iOS 7 中的动画期间是透明的
Posted
技术标签:
【中文标题】推送 UITabBarController 导致 UITabBar 在 iOS 7 中的动画期间是透明的【英文标题】:Pushing UITabBarController causes UITabBar to be transparent during animation in iOS 7 【发布时间】:2013-09-30 07:37:19 【问题描述】:我有一个 UIViewController,并且根据用户输入,我使用 push segue 将 UITabBarController 推送到导航堆栈。当推送动画时,UITabBar 变得透明。动画完成后,UITabBar 不再透明(想要的效果)。这仅在 ios 7 上发生,并且在弹出动画期间也会发生。
任何想法如何确保 UITabBar 在动画期间完全不透明?
【问题讨论】:
【参考方案1】:尝试
[[[UIApplication sharedApplication] keyWindow] setRootViewController:tabBar];
而不是
[self.navigationController pushViewController:tabBar animated:YES];
在 navigationController 和 tabBarController 之间切换。
【讨论】:
这可行,但我可以通过在推动视图控制器时删除动画来达到相同的效果。 UITabBar 似乎仅在推送动画运行时是透明的。之后它又变得不透明了。以上是关于推送 UITabBarController 导致 UITabBar 在 iOS 7 中的动画期间是透明的的主要内容,如果未能解决你的问题,请参考以下文章
如何防止通过推送 SFSafariViewController 解雇 UITabBarController?
从 UITabBarController 推送的 UISplitViewController
在 UITabBarController 的 UINavigationController 中推送 UIViewController
在 UITabBarController 中推送 UINavigationController 时 UITableViewCell 消失