如何更改未选择的标签栏按钮颜色?

How can I change the unselected tabbar button color?

提问人:ahtctn 提问时间:8/4/2023 更新时间:8/4/2023 访问量:64

问:

我想更改未选择的标签栏按钮颜色。我在 Stackoverflow 上做了一些研究。我将这些建议应用到我的代码中,但由于某种原因,我不适合我。例如,我想将未选择的标签栏按钮设置为粉红色。我该怎么做?我正在分享Main.storyboard标签栏选择的屏幕截图enter image description here

我也在分享我的 AppDelegate 文件:

    if #available(iOS 13.0, *) {
        let tabbar = UITabBarController()
        tabbar.tabBar.unselectedItemTintColor = .systemPink
    }

    
    return true
}
swift uikit uitabbar uitabbarappearance

评论

1赞 HangarRash 8/4/2023
您正在更改一次性选项卡栏控制器的未选择色调颜色。在实际的选项卡栏控制器实例或外观代理上设置它。
0赞 ahtctn 8/4/2023
你能告诉我更多细节吗?

答:

0赞 Hiral Jotaniya 8/4/2023 #1

在你的 appDelegate 中写下这个 - didFinishWithLaunching

下面的代码行设置所选选项卡栏项的色调颜色。在本例中,它被设置为蓝色。“选定”选项卡栏项是指当前处于活动状态或突出显示的选项卡。

UITabBar.appearance().tintColor = .systemPink

下面的代码行设置未选择的选项卡栏项的色调颜色,这些选项卡是当前未处于活动状态或突出显示的选项卡。在这种情况下,未选择的项目将着色为系统粉红色。

UITabBar.appearance().unselectedItemTintColor = .systemPink

您已从情节提要中为 UITabbar 分配了一个类 - 如果要使用上述代码,请从情节提要中删除该选项卡栏类,如果要保留该类,则应该有一个属性来修改未选择的色调。在使用自定义类时,没有必要操作本机 UITabbar 的色调。

请记住,请务必确保分配给情节提要中选项卡栏的任何自定义类都与以编程方式进行的更改不冲突。如果您仍然面临问题,请考虑提供更多,以便我为您提供进一步的帮助。