我对iPad UISplitViewController
非常陌生。
我需要在主视图/左视图的底部添加一个包含3个标签的标签栏。我为3个选项卡中的每个选项卡都有一个不同的View Controller。我还没有找到在基于拆分视图的应用程序中使用Tab标签的任何其他示例。
在哪里插入标签栏控制器以显示在根视图的底部?
如何建立连接,以便在选择表格单元格时,详细信息视图中会显示detailItem信息?标签栏已添加到IB中的根视图中。我应该以编程方式添加它吗?
答案 0 :(得分:3)
在您的app委托中添加tabbar控制器,然后将视图控制器添加到tabbar控制器并将窗口rootview控制器设置为tabbar controller。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
self.tabbar=[[UITabBarController alloc] init];
self.vc1 = [[vc1 alloc] initWithNibName:@"ViewController_iPhone" bundle:nil];
// do the same to other VCs
self.tabbar.viewControllers=[NSArray arrayWithObjects:vc1,vc2,vc3,vc4, nil];
self.window.rootViewController = self.tabbar;
[self.window makeKeyAndVisible];
return YES;
}
我希望它有所帮助: - )
答案 1 :(得分:1)
你必须动态地使用UITabBarController。
在.h文件中
UITabBarController * tabBar;
<。>文件中的
在appDidFinish启动
中为您的类创建对象例如你有
Class1和Class2
appDidFinishLaunch中的
Class1 * obj1 = [Class1 alloc] initWithNibName:@“Class1”bundle:nil]; ** Class2 obj2 = [Class2 alloc] initWithNibName:@“Class2”bundle:nil]; *
//默认情况下,主导航控制器附带模板代码
//现在你已经为tabBar
创建了数组NSArray * tabViewArray = [[NSArray alloc] initWithObjects:obj1,obj2,masterNavigationController,nil];
tabBar = [[UITabBarController alloc] init];
[tabBar setViewControllers:tabViewArray];
//现在你必须编辑包含splitview.viewArray repalce masterNavigataionControler with tabBar的语句
self.splitViewController.viewControllers = [NSArray arrayWithObjects:tabBar,detailNavigationController,nil];
试试这个我希望它能帮到你。
答案 2 :(得分:0)
你所要做的就是将uispliviewcontroller的第一个参数初始化为tabbar而不是视图,或者你可以使用uisegmentedcontrol。