使用 Storyboard 的 UITabBar 宽度
UITabBar width using Storyboard
我想获得 UITabBar
的宽度,以便获得项目的宽度。
为此,我使用:
let itemWidth = tabBar.frame.size.width / tabBar.items.count
但是我得到的宽度似乎不对...
tabBar.frame.size.width
根据预览给出 Storyboard 中 tabBar 的宽度...
也就是说,如果我的 Storyboard 预览设置为 iPad Pro 12.9",tabBar.frame.size.width
将 return 1024.0
即使代码是 运行 on an iPhone 5s.
我在这里错过了什么?
UITabBar
的尺寸 只有在其 layoutSubviews()
函数执行后才准确。子类 UITabBarController
并在 viewDidLayoutSubviews()
中访问标签栏的大小。
class CustomTabBarController: UITabBarController {
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
print(tabBar.frame.width) //this will print the actual width
}
}
我想获得 UITabBar
的宽度,以便获得项目的宽度。
为此,我使用:
let itemWidth = tabBar.frame.size.width / tabBar.items.count
但是我得到的宽度似乎不对...
tabBar.frame.size.width
根据预览给出 Storyboard 中 tabBar 的宽度...
也就是说,如果我的 Storyboard 预览设置为 iPad Pro 12.9",tabBar.frame.size.width
将 return 1024.0
即使代码是 运行 on an iPhone 5s.
我在这里错过了什么?
UITabBar
的尺寸 只有在其 layoutSubviews()
函数执行后才准确。子类 UITabBarController
并在 viewDidLayoutSubviews()
中访问标签栏的大小。
class CustomTabBarController: UITabBarController {
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
print(tabBar.frame.width) //this will print the actual width
}
}