我UIApplicationDelegate在我的主AppDelegate.m类中有协议,applicationDidBecomeActive定义了方法.
我想在应用程序从后台返回时调用方法,但该方法在另一个视图控制器中.如何检查applicationDidBecomeActive方法中当前显示的视图控制器,然后调用该控制器中的方法?
我需要你的帮助来澄清我对应用程序各种状态的理解.我将陈述我的解释 - 但请随时纠正我.
1)App在前台启动并运行:state = UIApplicationStateActive
2)用户按下home键:state = UIApplicationStateBackground(????).
Debug stmt in my app shows it to be Active
Run Code Online (Sandbox Code Playgroud)
3)用户双击主页并杀死应用程序:state = UIApplicationStateInactive
如果案例2的值确实是Active,那么该值何时设置为Background?
我的基于位置的应用依赖于此值来为用户采取适当的操作.
if ( ([UIApplication sharedApplication].applicationState == UIApplicationStateBackground) ||
([UIApplication sharedApplication].applicationState == UIApplicationStateInactive) ) {
// isInBackground = YES;
// ------ UI not available
}
else {
// isInBackground = NO;
// ------ UI is available
}
Run Code Online (Sandbox Code Playgroud)
问候,山姆.