TabBar控制器(Swift)中项目的多种徽章颜色



我有一个带有四个选项卡的UITabBarController的应用程序。我一直在尝试在不同的选项卡上定制不同的徽章(背景(颜色,但未能实现每个选项卡的独特定制。

我正在努力实现的目标:

  • 打开应用程序,默认选择第二个选项卡
  • 第三个选项卡收到通知,在第三个标签上呈现徽章,并将徽章BackgroundColor显示为蓝色
  • 一直以来,其他标签上的任何徽章都应该保持红色

选项卡栏似乎只会查看当前所选选项卡中tabBarItem的标准外观,例如,如果我将选项卡3的徽章BackgroundColor设置为蓝色,则当我选择该选项卡时,整个选项卡栏上的徽章将变为蓝色。然后,当我切换到任何其他选项卡时,所有选项卡栏项目上的徽章都将采用新选择选项卡上的徽章BackbackgroundColor。

我还试着使用tabBarItem.badgeColor,但这似乎根本没有效果。

选项卡项的标准外观是否总是影响所有其他选项卡?有没有一种方法可以在应用程序中唯一地自定义每个tabItem的badgeBackgroundColor?

不能回答后两个问题,只能回答第一个问题:

要初始选择第二个选项卡栏,请将选项卡栏连接到自定义UITabBarController,并使用选项卡控制器的selectedIndex设置初始选项卡,如下所示:

class TabBarController: UITabBarController {
override func viewDidLoad() {
super.viewDidLoad()
//The second tab is the first to show
self.selectedIndex = 1
}

u可以这样尝试:

  • 第一个问题
selectedIndex = 2
  • 第二个问题
tabBar.selectedItem?.badgeColor = .red

相关内容

  • 没有找到相关文章

最新更新