按下时隐藏底栏 - Iphone X 时动画冻结

Hiding Bottom Bar When Pushed - Animation freezing on Iphone X

我遇到了一个我一生都无法解决的问题。这个问题只发生在 iPhone X 上。我添加了一个小视频,因为很难解释到底发生了什么。

我还添加了故事板的屏幕截图,以便您查看流程。

当标签栏被隐藏时,几乎都遇到了冻结。它仅在我们访问类别 VC 时发生(使用 segue 以模态方式呈现,它也嵌入在导航控制器中。)

** 我还是 iOS 开发的新手,所以如果我做错了什么,请随时分享 :)

视频: https://youtu.be/HC14zFxh-HM

发送到reader的代码:

@IBAction func sendToReader(_ sender: Any) {
    let myVC = storyboard?.instantiateViewController(withIdentifier: "ReaderRootVC") as! ReaderRootVC
    myVC.book = self.book
    myVC.hidesBottomBarWhenPushed = true
    navigationController?.pushViewController(myVC, animated: true)
}

关闭类别VC的代码:

@IBAction func navigationCancelBtnPressed(_ sender: Any) {
    self.navigationController?.dismiss(animated: false, completion: nil)
}

故事板:

在您的 ReaderRootVC 中,

override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        // Hide the Tab Bar
        self.tabBarController?.tabBar.isHidden = true
    }

    override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(animated)

        // Show the Tab Bar
        self.tabBarController?.tabBar.isHidden = false
    }