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

Iphone 检测导航控制器的当前活动子视图,iphone,objective-c,Iphone,Objective C,我有一个导航控制器。我想在该控制器上运行一个后台线程,检查导航控制器中当前加载了哪个子视图。“已加载”表示活动的可查看子视图。您不必(或应该)为此使用后台线程。只需设置导航控制器的委托并实现该方法 - (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)ani

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

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

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

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

其中有一个
UINavigationController
属性(从):

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

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

@属性(非原子、只读、保留)UIViewController*topViewController

简单地做:

UIViewController* topController = navigationController.topViewController;
用于(UINavigationController*self.view.subview中的视图) { }