Ios 如何计算背景中的时间并使SKAction跳到后面的时间
我正在开发一个基于sprite工具包的应用程序。我知道当应用程序处于后台时,所有操作都将暂停。然而,我正在做淡入淡出的颜色的事情,所以我想计算应用程序在背景中的时间,并使淡入淡出的动作在之后跳转一段时间,这样当应用程序在背景中时,颜色看起来就不会改变。那么,有人能给我一些关于如何做到这一点的详细演练吗?非常感谢 根据rmaddy的建议编辑。 在应用程序处于活动状态时打开的视图控制器中,您可以直接订阅UIApplicationIDBecMeactiveNotification和UIApplicationWillResignActiveNotification,以便在应用程序进入或退出前台时获得通知Ios 如何计算背景中的时间并使SKAction跳到后面的时间,ios,sprite-kit,skaction,Ios,Sprite Kit,Skaction,我正在开发一个基于sprite工具包的应用程序。我知道当应用程序处于后台时,所有操作都将暂停。然而,我正在做淡入淡出的颜色的事情,所以我想计算应用程序在背景中的时间,并使淡入淡出的动作在之后跳转一段时间,这样当应用程序在背景中时,颜色看起来就不会改变。那么,有人能给我一些关于如何做到这一点的详细演练吗?非常感谢 根据rmaddy的建议编辑。 在应用程序处于活动状态时打开的视图控制器中,您可以直接订阅UIApplicationIDBecMeactiveNotification和UIApplicat
@property(nonatomic) NSDate *enterBackground;
@property (nonatomic) NSTimeInterval enterForeground;
-(void)viewDidLoad{
[super viewDidLoad];
[self subscribeToNotifications];
}
-(void)viewWillDisappear:(BOOL)animated{
[self unsubscribeFromNotifications];
}
-(void)subscribeToNotifications{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appEntersBackground) name:UIApplicationWillResignActiveNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(appEntersForeground) name:UIApplicationWillEnterForegroundNotification object:nil];
}
-(void)unsubscribeFromNotifications{
[[NSNotificationCenter defaultCenter]removeObserver:self name:UIApplicationWillEnterForegroundNotification object:nil];
[[NSNotificationCenter defaultCenter]removeObserver:self name:UIApplicationWillResignActiveNotification object:nil];
}
既然您的ViewController知道应用程序何时进入和退出前台,请添加启动和停止计时器的方法
-(void)appEntersBackground{
self. enterBackground = [NSDate date];
}
-(void)appEntersForeground{
self.enterForeground = [[NSDate date]timeIntervalSinceDate:self.enterBackground];
NSLog(@"%f",self.enterForeground);
}
在后台花费的时间可以通过self访问。enterForeground为什么要为此定义自己的通知?摆脱应用程序中的代码委托方法,只需在视图控制器中订阅标准的UIApplicationIDbecMeactiveNotification和UIApplicationWillResignActiveNotification通知。顺便说一句-这些是要使用的常量,而不是字符串文字。@rmaddy非常好的观点,不知道为什么我把它复杂了那么多!非常感谢!!我在后台计算了时间。但我对如何在应用程序激活后跳转状态有疑问。我正在做一个关于褪色的动作。你能给我一些建议吗?@zhu Vincent我不知道你说的是什么情况。你能说得更具体一点吗?你知道如何使用SKAction使SKShapeNode的填充色褪色吗?我的情况就是这样。所以,在应用程序进入前台后,我有点不知所措。我想知道在那之后如何跳转到这个状态。如果这只是一个视觉效果,那么从背景返回时只需设置一个随机颜色——没有人会注意到;