我有一个基于情节提要的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;
ViewController
或viewDidAppear
中的每个viewWillAppear
appDelegate = [[UIApplication sharedApplication] delegate];
appDelegate.currentModelViewController = self;
现在这可以工作
if ([self.currentModelViewController isKindOfClass:[LowProfileViewController class]])
{
NSLog(@"here!");
}