我需要实现一个对我来说非常复杂的多视图应用程序,我需要一些建议。多视图应用程序类似于:
第一个视图:带有一个按钮的普通 UIViewController,当我按下它时转到第二个视图第二个视图(又名主视图):一个带有选项卡栏的 Windows,其中有 2 个选项卡项在以下选项之间切换:第二个视图 A:具有一些元素的普通 UIViewController 第二个视图 B: UITableViewController
有人可以给我一个建议从哪里开始阅读或一些例子吗?
谢谢
我的建议是从苹果那里阅读示例代码,您还可以找到编码如何祝你好运,或者您可以在堆栈中找到示例代码,只需搜索即可。例如基于导航的应用程序: UINavigationController 在 UITabBarController 的 moreNavigationController 中不起作用
或简单的过渡:
SecondViewController *screen = [[SecondViewController alloc] initWithNibName:nil bundle:nil];
screen.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[self presentModalViewController:screen animated:YES];
[screen release];
希望对你有帮助
您需要从基于视图的应用程序开始。然后在你的 appDelegate 文件中创建一个 UITabbarController 。
Appdelegate.h
UITabBarController *tabBarController;
// 设置属性
Appdelegate.m
// 合成大小
tabBarController = [[UITabBarController alloc] init];
tabBarController.delegate=self;
//Adding Search,Nearby,Map,AboutUs,Favorites Tabs to tabBarController
Search * search = [[Search alloc] init];
UINavigationController *searchNav = [[UINavigationController alloc] initWithRootViewController:search];
Nearby* nearby = [[Nearby alloc] init];
UINavigationController *nearbyNav = [[UINavigationController alloc] initWithRootViewController:nearby];
Map* map = [[Map alloc] init];
UINavigationController *mapNav = [[UINavigationController alloc] initWithRootViewController:map];
AboutUs* aboutUs = [[AboutUs alloc] init];
UINavigationController *aboutUsNav = [[UINavigationController alloc] initWithRootViewController:aboutUs];
Favorites* favorites = [[Favorites alloc] init];
UINavigationController *favoritesNav = [[UINavigationController alloc] initWithRootViewController:favorites];
NSArray* controllers = [NSArray arrayWithObjects:searchNav,nearbyNav,mapNav,aboutUsNav,favoritesNav, nil];
tabBarController.viewControllers = controllers;
[window addSubview:tabBarController.view];
您可以相应地管理要在哪个选项卡中放置导航控制器或仅放置视图控制器。
然后在上面提到的每个视图控制器中,您需要实现
- (id)init {}
,您可以在其中设置选项卡名称和图像。