2014-08-28 79 views
-1

我的應用程序的入口是UINavgationViewController。根視圖控制器是UITabBarViewControllerUITabBarViewController包含一些正常的UIViewController s。這些控制器可致電:如何在iOS中找到當前視圖控制器

self.navgationController.pushViewcontroller(otherViewController, animated:true);

不過,我在後臺運行的另一個線程。我怎麼知道哪個視圖控制器正在主屏幕上顯示?

我試圖撥打UIApplication.keywindows.rootviewcontroller,但它返回UINavgationViewController

UINavgationViewController.viewcontrollers.count == 1,它只包含UITabBarViewController

回答

0

我想你可以從你的標籤欄獲取選中視圖控制器:

navigationController.tabBarController.selectedViewController 
0

嘗試通過在每個視圖控制器類viewDidAppear方法的ViewController類的

- (void)viewDidAppear:(BOOL)animated 
{ 
     NSLog(@"Currennt view:%@",self); 
} 

self回報名

0
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate]; 


NSLog(@"%@",appDelegate.navController.topViewController); 

您可以獲取p最推Controller

相關問題