1.最简单的只有一个控制器的root页面(不用默认的storyrboard)
AppDelegate.m
#import "AppDelegate.h"
#import "KCMainViewController.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen] bounds]];
KCMainViewController *mainView = [[KCMainViewController alloc]initWithNibName:@"KCMainViewController" bundle:nil];
_window.rootViewController = mainView;
[_window makeKeyAndVisible];
return YES;
}
2.用Navigation设置的多个控制器的root页面
1)AppDelegate.h
#import <UIKit/UIKit.h>
@interface AppDelegate : UIResponder <UIApplicationDelegate>
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) UINavigationController *navigationController;
@end
2)AppDelegate.m
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc]initWithFrame:[[UIScreen mainScreen]bounds]];
self.window.backgroundColor = [UIColor whiteColor];
RegisterViewController *masterViewController = [[RegisterViewController alloc]initWithNibName:@"RegisterViewController" bundle:nil];
_navigationController = [[UINavigationController alloc]initWithRootViewController:masterViewController];
[_window addSubview:_navigationController.view];
[self.window makeKeyAndVisible];
}
这里多说点页面跳转的事情,如果用navigation,就是用代理的navigationController的pushViewController方法把新的controller放到导航的栈里,运用“后进先出”的原理,切换页面。
3.使用TabBar设置Root控制器
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
GGTabBarController *tabBar = [[GGTabBarController alloc] init];
TestViewController1 *vc1 = [[TestViewController1 alloc] init];
// vc1.tabBarItem.title = @"花时间";??
// vc1.tabBarItem.badgeValue = @"12";
TestViewController2 *vc2 = [[TestViewController2 alloc] init];
TestViewController3 *vc3 = [[TestViewController3 alloc] init];
tabBar.viewControllers = @[vc1, vc2, vc3];
self.window.rootViewController = tabBar;
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
return YES;
}