CABasicAnimation在segue之后不起作用

时间:2015-04-02 14:59:00

标签: xcode segue cabasicanimation quartz-core

我正在关注一个迷宫教程(link),其中我为一个名为ghost1的UIImageView设置动画,这要归功于以下代码(代码位于viewDidLoad:ViewController.h文件的方法中):

CGPoint origin1 = self.ghost1.center;
CGPoint target1 = CGPointMake(self.ghost1.center.x, self.ghost1.center.y-124);

CABasicAnimation *bounce1 = [CABasicAnimation         

animationWithKeyPath:@"position.y"];
bounce1.fromValue = [NSNumber numberWithInt:origin1.y];
bounce1.toValue = [NSNumber numberWithInt:target1.y];
bounce1.duration = 2;
bounce1.autoreverses = YES;
bounce1.repeatCount = HUGE_VALF;

[self.ghost1.layer addAnimation:bounce1 forKey:@"position"];

此时效果很好。现在,我想为应用程序添加一个新的初始视图(为了首先显示一个菜单,而不是直接显示游戏),并在我按下" start"这个新视图中的按钮。

我添加了按钮和#34;显示"类型的segue。当我按下按钮时 显示游戏,但动画不起作用。

你知道为什么以及如何纠正这个问题吗?

1 个答案:

答案 0 :(得分:0)

好的,我刚刚在这里找到了一个解决方案:link

我只需将代码从viewDidLoad:移动到viewDidAppear:。我不完全理解为什么,但它有效。