我已通过故事板向我的视图控制器添加了标签栏控件,
有以下限制
因为我需要选定项目的选择指示器图像,所以我在viewDidLayoutSubviews
方法中使用以下代码
override func viewDidLayoutSubviews(){
super.viewDidLayoutSubviews();
viewForTab.setShadow(shadowColor: UIColor.gray.cgColor, shadowOffset:CGSize.init(width: 0.0, height: 3.0), shadowOpacity: 0.8, shadowRadius: 3.0)
tabBar.selectionIndicatorImage = APPDELEGATE.getImageWithColorPosition(color: UIColor.themeSectionBackgroundColor, size: CGSize.init(width: viewForTab.frame.width/2, height: viewForTab.frame.height ), lineSize: CGSize.init(width: viewForTab.frame.width/2, height: 1.5))
}
它在iPhone中获得完美的效果,但在ipad中,用户界面变得难看,
正如您在下图中所看到的,登录名和注册文本未对齐中心,指示器也将uittbar项目左侧的空间放在了左侧,但在iphone中它完美地工作了。
无法找出问题所在。
最佳答案
设置UITabBar的类,并从情节提要
class TabBar: UITabBar {
override var traitCollection: UITraitCollection {
guard UIDevice.current.userInterfaceIdiom == .pad else {
return super.traitCollection
}
return UITraitCollection(horizontalSizeClass: .compact)
}
}
给出选项卡栏的类希望能帮助到你
关于ios - iPad和iPhone中的UITabbar Appearance Chang,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49106441/