我注意到 UITabBarController
标签栏的高度会被压缩,当弹出一个 UIViewController
包含一个 web view 然后回到 UITabBarController
时iOS 12 设备。像这样:
我该如何解决?
最佳答案
使用这个
import UIKit
class FixedTabBar: UITabBar {
var itemFrames = [CGRect]()
var tabBarItems = [UIView]()
override func layoutSubviews() {
super.layoutSubviews()
if itemFrames.isEmpty, let UITabBarButtonClass = NSClassFromString("UITabBarButton") as? NSObject.Type {
tabBarItems = subviews.filter({$0.isKind(of: UITabBarButtonClass)})
tabBarItems.forEach({itemFrames.append($0.frame)})
}
if !itemFrames.isEmpty, !tabBarItems.isEmpty, itemFrames.count == items?.count {
tabBarItems.enumerated().forEach({$0.element.frame = itemFrames[$0.offset]})
}
}
}
关于ios - 当弹出一个 UIWebView Controller 然后回到 UITabBarController 时,tab bar 的高度会改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53221812/