在基于Interface Builder的TabBar应用程序中处理更多导航控制器

时间:2010-05-10 08:43:42

标签: iphone interface interface-builder uitabbarcontroller

我还不清楚如何以及何时使用界面构建器。我有一个基于tabbar的应用程序,其中我添加了6个导航控制器。而不是有6个标签,我想3加上一个“更多”标签,允许用户配置他想要的标签。

有没有办法用IB做到这一点?如果没有,我怎样才能从IB移动到基于代码的tabbar(前提是我已经设置了一个处理shouldAutoRotate的类TabBarController:)

提前致谢!

1 个答案:

答案 0 :(得分:-1)

我解决了我的问题。由于我已经在IB中为我的标签栏控制器指定了TabBarController的类标识,我添加了这个:

NSMutableArray *customizeable = [[NSMutableArray alloc] init];
for (id controller in tabBarController.customizableViewControllers)
{
    if ([controller isKindOfClass: [MyCustomizeable class]])
        [customizeable addObject:controller];
}
tabBarController.customizableViewControllers = customizeable;
[customizeable release];

吼叫:

[window addSubview:tabBarController.view];

ApplicationDelegate

感谢http://www.mactech.com/articles/mactech/Vol.25/25.03/iPhoneProductivityApplicationsPart1/

请注意,我可以使用以下几行来完成这项工作:

NSMutableArray *customizeable = [[NSMutableArray alloc] init];
tabBarController.customizableViewControllers = customizeable;
[customizeable release];

但我想控制哪些标签可以重新排列