检测导航控制器的当前活动子视图

时间:2011-05-19 10:26:32

标签: iphone objective-c

我有一个导航控制器。我想在该控制器上运行后台线程,该控制器检查当前在导航控制器中加载了哪个子视图。 loading表示活动的可查看子视图。

4 个答案:

答案 0 :(得分:2)

您不必(或应该)使用后台线程。只需设置导航控制器的委托并实现方法

- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated

然后,您可以将当前活动的视图控制器存储在实例变量中。

答案 1 :(得分:1)

有一个UINavigationController属性(来自here):

  

topViewController

     

导航堆栈顶部的视图控制器。 (只读)

     

@property(nonatomic,readonly,retain)UIViewController * topViewController

简单地做:

UIViewController* topController = navigationController.topViewController;

答案 2 :(得分:0)

for (UIView *view in self.navigationController.view.subviews) 
{
}

答案 3 :(得分:-1)

for(UINavigationController * in self.view.subviews中的视图) { }

相关问题