ios--appDelegate切换根视图rootViewController(最常用的场合是首次启动跳至导航ViewController)


 

转载自 http://blog.csdn.net/wanggsx918/article/details/25215183

1、在appDelegate中添加一个切换的方法switchRootViewController:

 

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  
    {  
        self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];  
              
        if ([[NSUserDefaults standardUserDefaults] boolForKey:@"firstLaunch"]) {  
            //第一次启动导航页  
            NSLog(@"wanggsx:第一次启动");  
            ViewController *appStartController = [[ViewController alloc] init];  
            self.window.rootViewController = appStartController;  
            [self.window addSubview:appStartController.view];  
        }  
        else  
        {  
            //打开选择场地界面  
            [self switchRootViewController];  
        }  
        [self.window makeKeyAndVisible];  
        return YES;  
    }  
      
    //切换RootViewController  
    - (void)switchRootViewController  
    {  
        self.window.rootViewController = nil;  
        ChooseModeViewController* crBrandsViewController= [[ChooseModeViewController alloc] init];  
        UINavigationController *brandsNavigationController = [self customControllerWithRootViewController:crBrandsViewController];  
        self.viewController = brandsNavigationController;  
        self.window.rootViewController = self.viewController;  
    }  

 

 

2、在需要切换根视图的ViewController中调用appDelegate中的方法:

 

        - (IBAction)gotoMainView:(id)sender {  
            [[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"firstLaunch"];  
            [(AppDelegate*)[UIApplication sharedApplication].delegate switchRootViewController];  
        } 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM