我尝试尽可能避免使用 Interface Builder。
目前,我通过代码创建了 View Controller ,并通过代码更改了 View 。
我现在需要一个步骤来将应用程序发送到带有标签栏的新 View ,这样我也可以更改 View 。
理想情况下,我要做的就是告诉当前 View Controller 在底部添加一个选项卡栏,但我不确定这是否可行,所以我可能必须将 UIViewController 与 UITabBarController 交换?
任何帮助将不胜感激。
干杯, 安德烈
最佳答案
我手头没有 Xcode,所以我会尝试口头回答。
创建一个新的 UITabBarController
并将当前 View 设置为 Root View
,然后添加所需数量的选项卡(每个选项卡都有自己的 View )。
更新
初始化 Controller 后,定义一个 View 数组(添加顺序很重要)。并在标签栏 Controller 上调用它
- (void)setViewControllers:(NSArray *)viewControllers animated:(BOOL)animated
更新2
这是一个简单的代码,用于创建一个带有两个空 View 的选项卡栏,每个 View 都有自己的选项卡按钮。
tabBarController = [[UITabBarController alloc]init];
firstView = [[FirstView alloc] init];
UITabBarItem *item1 = [[[UITabBarItem alloc]initWithTitle:@"First" image:nil tag:1] autorelease];
[firstView setTabBarItem:item1];
secondView = [[SecondView alloc] init];
UITabBarItem *item2 = [[[UITabBarItem alloc]initWithTitle:@"Sec" image:nil tag:1] autorelease];
[secondView setTabBarItem:item2];
[tabBarController setViewControllers:[NSArray arrayWithObjects:firstView,secondView,nil] animated:NO];
[window addSubview:tabBarController.view];
当然,此代码不会按原样有用,您需要手动创建 View ,或者为每个 View 创建一个 nib 文件并将其加载到 initWithNibName
更新3
检查这个Stanford iPhone Course ,这是斯坦福大学的免费类(class)。讲师是苹果员工。标题为导航和选项卡栏 Controller 的第 7 讲将为您提供这些组件的良好开端。
关于iphone - 如何在没有 XIB 的情况下将选项卡栏添加到现有 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2492621/