我正在尝试更改标签栏项目的徽章但没有成功.我明白标签栏控制器负责控制器的标签栏.
但是,标签栏本身中的某些内容可以由视图控制器(例如徽章)管理
在我的代码中,我尝试在视图中加载
self.tabBarItem.badgeValue = "3"
但徽章中没有任何内容
然后我试了一下:
self.tabBarController?.tabBarItem.badgeValue = "3"
哪个不起作用,好吧,我知道为什么第二个代码不起作用,它与使用导航控制器而不是导航项更改导航控件的标题相同.但我不知道为什么第一个代码不起作用
这是我的应用程序的hiechy,我在TeamsTableViewController这样做,这是团队选项卡中的第一个视图控制器
解决方法
在您的场景中,导航控制器控制tabBarItem而不是TableViewController,因为每个TabBarController都有一个viewControllers数组,并且这些viewControllers中的每一个都与tabBarItem相关联.在您的情况下,tabBarController有两个viewControllers,它们是:
>团队导航控制器
>团队视图控制器
因此团队视图导航控制器是控制选项卡栏项的视图控制器.
这样做可以解决您的问题
self.navigationController?.tabBarItem.badgeValue = "3"