Fra*_*gle 6 iphone uiviewcontroller
在iOS4.2/iPhone4中
现在我可以看到我的app delegate在最后一步之后选中它时会收到一条消息"applicationDidBecomeActive",但是我的viewController(当前显示的那个视图)是如何知道的?
viewDidLoad已被调用,因此不会再次调用.不再调用viewWillLoad.
似乎无法弄明白.我问的原因是我想检查是否有任何设置更改,但是想在视图控制器中执行此操作,因为这是关心的事情.
Dan*_*ich 12
答案就在这里:处理applicationDidBecomeActive - "视图控制器如何响应应用程序变为活动状态?"
用于NSNotificationCenter通知UIApplicationDidBecomeActiveNotification视图控制器中的事件.
在你appDelegate applicationDidBecomeActive把这个:
- (void)applicationDidBecomeActive:(UIApplication *)application
{
UINavigationController *navc = (UINavigationController *)[tabBarController selectedViewController];
UIViewController *topvc = [navc topViewController];
if ([topvc respondsToSelector:@selector(viewControllerDidBecomeActive)])
{
[topvc performSelector:@selector(viewControllerDidBecomeActive)];
}
}
Run Code Online (Sandbox Code Playgroud)
这将获得在屏幕上看到的viewController.你只需要viewControllerDidBecomeActive在每个viewControllers 上实现;)
| 归档时间: |
|
| 查看次数: |
9317 次 |
| 最近记录: |