这很奇怪。我的全局色调已设置,我的图标颜色已设置为我拥有的默认紫色。然而在运行时它是蓝色的。有小费吗?我已经检查过,没有看到其他人有这个问题。
Storyboard:
运行:
最佳答案
基本上,当您想以编程方式更改 UITabBar
的色调颜色时,UITabBar
类为您提供了几个色调颜色属性:
tintColor
: TabBarItem
的颜色。 barTintColor
: TabBar
的背景栏的颜色。 unselectedItemTintColor
: 未选中项目的颜色。 所以如果你改变
tintColor
,barItems 的颜色就会改变。...但是,为什么它不适用于 IB?
当您在 IB 中为 UITabBar 的项目设置特定颜色时,有一个名为
Image Tint
的选项。更改“查看”部分上的
Tint
选项不会影响 TabBar 的项目,但只有 Image Tint
选项可以更改 tabBar 的项目颜色。storyboard 的全局色调选项改变了“查看”部分的
Tint
选项,但不影响 Image Tint
选项的默认值,所以它不会影响标签栏的色调颜色。那么.. 为什么
Image Tint
选项不受影响?我无法解释为什么它不受影响。也许苹果有这个问题,或者某种错误。
有一些设置图像颜色的解决方法:
Image Tint
选项。 您可能应该设置每个
TabBarController
的 Image Tint
选项,因为它不会影响全局设置。在
AppDelegate.swift
的 didFinishLaunchingWithOptions
处,粘贴以下代码UITabBar.appearance().tintColor = <#Color what you want#>