在iOS 7中忽略了hidesBottomBarWhenPushed
此代码在iOS 7发布之前运行良好。我正在分配一个 UIViewController
,其中 hidesBottomBarWhenPushed
为 YES
,作为 UINavigationController
的 rootViewController
。但无论如何都会显示TabBar。以下是相关代码:
This code was working well until iOS 7 release. I'm assigning a UIViewController
, with hidesBottomBarWhenPushed
as YES
, as the rootViewController
of an UINavigationController
. But the TabBar is being shown anyway. Here's the relevant code:
Login *lv = [[Login alloc] init];
lv.HowToUseShows = showHowToUse;
lv.hidesBottomBarWhenPushed = YES;
UINavigationController *BokShelfNav = [[UINavigationController alloc] initWithRootViewController:lv];
//...
UITabBarController *tbController = [[UITabBarController alloc] init];
tbController.viewControllers = @[BokShelfNav,...];
任何有类似问题的人?
我发现调用方法和设置属性的顺序会影响标签栏是否显示。
I found that the order in which methods are called and properties are set has an impact on whether the tab bar is shown.
如果我在视图控制器的 viewDidLoad
方法中放入 self.hidesBottomBarWhenPushed = YES;
我正在推动标签栏还是表明。如果我将它移动到 init
方法,则标签栏会像在iOS 6上一样隐藏。
If I put self.hidesBottomBarWhenPushed = YES;
in the viewDidLoad
method of the view controller I'm pushing the tab bar still shows. If I moved it to the init
method the tab bar hides as it used to on iOS 6.