UITabbar在iPad和iPhone上出现Chang

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UITabbar在iPad和iPhone上出现Chang相关的知识,希望对你有一定的参考价值。

我通过故事板向我的视图控制器添加了tabbar控件,具有以下约束.enter image description here

因为我需要所选项目的选择指标图像,我在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中ui变得丑陋,正如你在下面的图像中看到的,登录和注册文本没有对齐中心,并且指示器从uitabbar项目的左侧放置空间但在iphone中它完美地工作。

无法识别问题..

enter image description here

答案

创建UITabBar类,并从Storyboard中提供TabBar类

class TabBar: UITabBar {

    override var traitCollection: UITraitCollection {
        guard UIDevice.current.userInterfaceIdiom == .pad else {
            return super.traitCollection
        }

        return UITraitCollection(horizontalSizeClass: .compact)
    }
}

希望能帮助到你

以上是关于UITabbar在iPad和iPhone上出现Chang的主要内容,如果未能解决你的问题,请参考以下文章

带有自动调整大小的 UITabBar

UITabBar 获取选中项

如何在 UITabBar 中显示六个 TabBarItem

UITabBar 图标在 iPad 上偏离中心

iPad 上的 iPhone 应用程序:drawViewHierarchyInRect 导致故障

有没有办法检测扩展是不是在 iPad 和 iPhone 上运行