gpt4 book ai didi

swift - 在 iPhone X 上进行模式呈现后,在没有选项卡栏的情况下跳转到 Controller 时,UITabbar 会跳转

转载 作者:行者123 更新时间:2023-11-30 11:19:18 25 4
gpt4 key购买 nike

我有一个主 Controller 屏幕上有一个选项卡栏的“主细节”应用程序,但 iPhone X 出现问题。当我从“主”切换到“细节”时,一切正常。如果我首先从主窗口显示模态窗口,然后转到详细信息,则选项卡栏会卡住一段时间并显示错误的大小。如果我修复选项卡栏的大小,一切动画都会很好。以此为例:

class MyTabBar: UITabBar {
var tabBarHeight: CGFloat = 83

override func sizeThatFits(_ size: CGSize) -> CGSize {
let superSize = super.sizeThatFits(size)
return CGSize(width: superSize.width, height: self.tabBarHeight)
}
}

但是,我不想固定大小,因为管理所有可能的大小和方向太复杂。

最佳答案

我找到了解决方案:

class MyTabBarController: UITabBarController {

override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.view.setNeedsLayout()
}

override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
UIView.animate(withDuration: 0.4) { [weak self] in
self?.view.layoutIfNeeded()
}
}
}

关于swift - 在 iPhone X 上进行模式呈现后,在没有选项卡栏的情况下跳转到 Controller 时,UITabbar 会跳转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51458623/

25 4 0