您的位置:首页 > 移动开发

IOS AppDelegate设置Root页面

2015-09-19 16:35 357 查看
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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: