当前位置:  开发笔记 > 编程语言 > 正文

使用TabBar的基于导航的应用程序

如何解决《使用TabBar的基于导航的应用程序》经验,为你挑选了1个好方法。

我有一个基于导航的应用程序,它显示了一个TableView,您可以在其中选择一个单元格,它会为您带来该单元格的"详细信息视图".我希望这个视图有一个TabBar,我可以在3个子视图之间进行选择.我在网上找到了几个解决方案,但没有一个非常有帮助.是否有专门的教程或是他们的源代码,说明如何做到这一点?谢谢



1> Brad The App..:

基本上您需要做的是将Tab View Controller推送到Navigation Controller的viewcontroller堆栈.

从一个全新的"基于导航的应用程序"模板开始.我在RootViewController.m中添加了以下方法:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
//Navigation logic may go here. Create and push another view controller.
UIViewController *viewOneViewController =   [[UIViewController alloc] init];
viewOneViewController.title = @"One";
viewOneViewController.view.backgroundColor = [UIColor redColor];

UIViewController *viewTwoViewController =   [[UIViewController alloc] init];
viewTwoViewController.title = @"Two";
viewTwoViewController.view.backgroundColor = [UIColor orangeColor];

UIViewController *viewThreeViewController = [[UIViewController alloc] init];
viewThreeViewController.title = @"Three";
viewThreeViewController.view.backgroundColor = [UIColor greenColor];

UITabBarController *anotherViewController = [[UITabBarController alloc] init];
anotherViewController.viewControllers = [NSArray arrayWithObjects:viewOneViewController, viewTwoViewController, viewThreeViewController, nil];
[self.navigationController pushViewController:anotherViewController animated:YES];
[anotherViewController release];

}

将此更改为25以测试:

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return 25;
}

现在,当我构建并运行时,我将以基本方式看到您正在寻找的内容.完成此工作后,您要做的是将UIViewControllers更改为您创建的自定义子类,以保存每个视图的代码.(如果您还使用Interface Builder,请将init更改为initWithNibNamed :).

希望这可以帮助你顺利完成任务.

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有