为什么变量“preferredStatusBarStyle”会删除标签栏?

时间:2017-05-02 01:57:16

标签: ios swift uitabbarcontroller

我有一个名为main的视图控制器1。当它检测到用户尚未登录时,它会显示一个名为firstTimeLaunchController的视图控制器2。

第一个(主要)是这样的:

class Main: UIViewController {
    ...
    override func viewDidAppear(_ animated: Bool) {
        if userDefaults?.bool(forKey: "didLogin") != true {
            let vc = self.storyboard?.instantiateViewController(withIdentifier: "ftController") as! firstTimeLaunchController
            self.present(vc, animated: true, completion: nil)
        }
    }
    ...
}

在第二个中,我有一个preferredStatusBarStyle变量。当它完成后,它称为解雇。

class firstTimeLaunchController: UIViewController {
    ...
    override var preferredStatusBarStyle: UIStatusBarStyle {
        return .lightContent
    }
    ...

    @IBAction func done(_ sender: Any) {
       ...
       dismiss(animated: true)
    }
}

当它被解雇时,Main ViewController的标签栏消失了。 我删除它时工作正常:

override var preferredStatusBarStyle: UIStatusBarStyle {
        return .lightContent
}

为什么ViewController 2上的Status Bar行会影响View控制器1上的Tab Bar

1 个答案:

答案 0 :(得分:0)

与您的代码一起,在Info.plist中将查看基于控制器的状态栏外观设为否