如何从UIApplication切换视图控制器

时间:2014-08-30 13:15:22

标签: ios objective-c uiviewcontroller uiapplication

基本上,我在uiapplication中设置了一个计时器,用于检查用户是否处于空闲状态,我想要发生的是,如果用户空闲的时间足够长,则顶部的viewcontroller将是一个初始登录。

计时器部分正常工作,我已经尝试过使用NSlog。

所以基本上,我需要找出当前的视图控制器,如果它不是注册或登录视图控制器,它应该转到初始登录视图控制器。

如何在UIapplication类中获取当前视图控制器,然后切换?

如果有任何帮助,我使用的是导航控制器,而不是标签栏控制器。

2 个答案:

答案 0 :(得分:0)

您可以使用sharedApplication单例:

检索应用程序的根视图控制器
AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
UINavigationController *rootNavController = appDelegate.mainWindow.rootViewController;
// Change to what you want your rootViewController

答案 1 :(得分:-2)

您可以在navigationController堆栈上查看所有View Controller。

请参阅self.navigationController.topViewController和self.navigationController.visibleViewController;