在我的UITabbar应用程序(使用xCode创建)中,我有6个选项卡按钮。在第一个标签,我有5个uibuttons应该加载其他5个相应的标签,当点击按钮。第一个是索引/主页,其他是不同的模块,每个模块都有一个nib文件。
我的问题是,当点击Button1时,它应该加载标签栏1(索引从0开始tabbar App),当点击Button2时,它应该加载标签栏2,等等。
在IB操作中,我编写了以下代码
-(IBAction)Button1:(id)sender
{
firstViewController = [[FirstViewController alloc] initWithNibName:@"FirstView"bundle:nil];
[self.view addSubview:firstViewController.view];
}
据我所知,这将在标签栏0上绘制(添加)firstViewController,而不是调用标签栏索引1。
我应该试试吗
- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController;
如果是,我应该写在哪里?
创建一个ParentTabbarController,它将派生自UITabBarController。现在把子控制器放到这个ParentTabBarController中。在ParentTabBarController中定义一个方法,负责将选项卡视图放置在相应的选项卡中。
从你的action on button tap你需要ping父控制器方法的参数(可能是索引像1,2等),这将放置标签的基础上提供的索引。我希望这将帮助您确定放置上述代码的位置。