iOS 13:调整 UITabBar 高度不起作用

Bri*_*any 0 uitabbarcontroller uitabbar ios swift ios13

有没有其他人注意到以编程方式更改标签栏高度在 iOS 13 中不起作用?有没有人有解决方法?相同的代码在 iOS 11 和 12 中完美运行,但标签栏在 iOS 13 中没有调整大小。谢谢

eva*_*njd 5

如果没有您的代码片段,很难说有什么问题,但是通过继承 UITabBarController 并viewDidLayoutSubviews在 iOS 12 和 13 中设置标签栏高度来设置标签栏高度。

class MainTabBarViewController: UITabBarController {

    override func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()

        let tabBarHeight: CGFloat = 120
        var tabFrame = tabBar.frame
        tabFrame.size.height = tabBarHeight
        tabFrame.origin.y = view.frame.size.height - tabBarHeight
        tabBar.frame = tabFrame
    }

}
Run Code Online (Sandbox Code Playgroud)

  • 好吧,对我来说区别是使用 viewDidLayoutSubviews() 而不是 viewWillLayoutSubviews()。谢谢! (3认同)