我的tabbar中有9个标签...我想从一些视图控制器更改所有这些标题。我这样做了:
for (int i=0; i(less than)[appDelegate.tabBarController.viewControllers count]; i++) {
UIViewController *uv=[appDelegate.tabBarController.viewControllers objectAtIndex:i];
uv.tabBarItem.title=@"test";
}
它会立即更改所有可见标签的标题,但不适用于更多标签...
但是,如果我点击更多nav cntrl中的编辑按钮,它会显示更改的名称。 另外......非常奇怪...如果我选择更多标签,那么所有标签都会反映新名称 为什么会这样?
答案 0 :(得分:1)
在将项目添加到每个Apple文档的栏中之前,需要更改UIBarItem(UITabBarItem的超类)的标题。看起来iOS会在项目添加到栏中后缓存标题,因此您将获得不可预测的行为。
来自UIBarItem类参考:
<强>标题强>
项目上显示的标题。
@property(非原子,复制)NSString * title
<强>讨论强>
您应该在将项目添加到栏之前设置此属性。默认值为nil。