applicationWillResignActive

applicationWillResignActive

我有一个基于情节提要的Single View App;

我的Storyboard上有3个ViewControllers,链接到代码中的3个ViewController类;

我这样做来浏览ViewControllers之间:

UIStoryboard*  sb = [UIStoryboard storyboardWithName:@"MainStoryboard_iPhone" bundle:[NSBundle mainBundle]];
MenuViewController* mainMenu = [sb instantiateViewControllerWithIdentifier:@"vcMainMenu"];

mainMenu.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:mainMenu animated:YES];

现在,我需要从当前 Activity 的UIcontrols访问applicationWillResignActive上的其他ViewController,根据ViewController,我将访问不同的控件,我正在尝试通过执行以下操作:
if ([self.window.rootViewController isKindOfClass:[LowProfileViewController class]])
{
    NSLog(@"here!");
}

但是它总是返回rootViewController。如何从rootViewController获取当前显示的applicationWillResignActive

请不要加入NavigationController ...

谢谢

最佳答案

你可以试试这个-

  • 制作一个AppDelegate @property(即currentModelViewController)
    @property (nonatomic, retain) UIViewController *currentModelViewController;
    
  • 对于ViewControllerviewDidAppear中的每个viewWillAppear
    appDelegate = [[UIApplication sharedApplication] delegate];
    appDelegate.currentModelViewController = self;
    

  • 现在这可以工作
    if ([self.currentModelViewController isKindOfClass:[LowProfileViewController class]])
    {
        NSLog(@"here!");
    }
    

    07-28 03:56