UITabBar Badging

时间:2009-09-08 16:52:10

标签: iphone objective-c cocoa-touch uitabbar badge

知道为什么会这样有效:

[[[[[self tabBarController] tabBar] items] objectAtIndex:2] 
                                          setBadgeValue:@"Hello"];

但这不是吗?

[[self tabBarItem] setBadgeValue:@"Hello"];

我宁愿不必提供明确的标签栏索引(上面代码中的2)。另外,在第一个片段是使其工作的唯一方法的情况下,有没有办法从视图控制器中获取标签栏索引?

感谢。

1 个答案:

答案 0 :(得分:0)

你引用的tabBarItem实际上是tabBarViewController中的一个项吗?如果它不是那么你的问题。你可以知道你的viewController的索引,因为你在tabBarviewCOntroller中设置视图控制器时指定顺序,所以如果你在tabBarViewController中首先设置viewController,那么它的按钮的索引为0。

通过你的评论你的问题变得更加清晰,正如回复所说,也许一旦你设置了UITabBarController viewController,它就抓住了它的tabBarItem,后来改变了那个viewController属性,不会被tabBarViewController更新(我可能错了这个是一个猜测)