首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何继续UIImageView动画后的didEnterBackground?

如何继续UIImageView动画后的didEnterBackground?
EN

Stack Overflow用户
提问于 2012-09-05 19:11:35
回答 1查看 650关注 0票数 0

我有一个简单的UIImageView (myimageview)加载了一个用于动画的NSArray(animationArray)图像(在my ViewController.m)中)

代码语言:javascript
复制
[self.myimageview setAnimationImages:self.animationArray];
[self.myimageview setAnimationDuration:[self durationTime]];
[self.myimageview setAnimationRepeatCount: 1];
[self.myimageview startAnimating];

我知道在哪里使用stopAnimating等等。但是我有个奇怪的问题。当屏幕锁定时,我的动画就不会发生任何变化。任何东西都很有魅力。解锁屏幕后继续。

然而,当我的应用程序进入后台模式,那么整个动画停止(我的动画是2-3分钟,因此它是不可接受的)。我搜索了一下,发现了这个话题:

How to pause a UIImageView animation

上面写着要使用这个代码:

代码语言:javascript
复制
UIView *viewBeingAnimated = //your view that is being animated
viewBeingAnimated.frame = [[viewBeingAnimated.layer presentationLayer] frame];
[viewBeingAnimated.layer removeAllAnimations];
//when user unpauses, create new animation from current position.

现在,我试图将其实现到AppDelegate.m中的代码中。

代码语言:javascript
复制
// in -(void)applicationDidEnterBackground:
self.viewController.myimageview.frame = [[self.myimageview.frenchPress.layer presentationLayer] frame];

但是,我在 XCode中遇到了这个问题(对于上面的行),我不能继续下去了:

代码语言:javascript
复制
AppDelegate.m:40:47: Receiver type 'CALayer' for instance message is a forward declaration

如果我退出到值的后台:self.currentDate (只是为了sidenote,以防我们需要它),我可以节省时间。

如何在没有中断的情况下暂停并播放动画?

EN

回答 1

Stack Overflow用户

发布于 2012-09-05 19:14:35

为了访问CALayer的所有消息和属性,您必须包含其相应的框架头:

代码语言:javascript
复制
#import <QuartzCore/QuartzCore.h>

希望这能消除警告。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12288221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档