生命周期:何时在UIViewController中隐藏和显示选项卡栏

lea*_*ner 2 lifecycle objective-c uiviewcontroller ios

隐藏我的标签栏

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.tabBarController.tabBar.hidden=YES;
}
Run Code Online (Sandbox Code Playgroud)

很清楚地再次显示它,我要做的就是打电话

self.tabBarController.tabBar.hidden=NO;
Run Code Online (Sandbox Code Playgroud)

但是我应该在哪个生命周期方法中进行调用?对于最新的iOS / Xcode中哪些生命周期方法仍然有效,似乎存在分歧。另外,关于声音工程,我想知道一个非常正确的答案:viewDidDisappearViewDidUnloadViewDidDispose

Ger*_*tan 5

根据您要实现的目标,在许多用例中都有一个更优雅的解决方案:

故事板:

转到要推送的视图控制器。

检查“按一下隐藏底栏”

以编程方式:

在推送的viewController中:

override var hidesBottomBarWhenPushed: Bool {
    get {
        return true
    }
    set {
        super.hidesBottomBarWhenPushed = newValue
    }
}
Run Code Online (Sandbox Code Playgroud)