0

我在使用该isAnimating功能时遇到问题。

我有一个名为 imgBecher 的 UIImageView。在viewDidLoad函数中我播放一个小动画:

    imgBecher.image = [UIImage imageNamed:@"diceholderAni.11.png"];
    AniArray = [NSArray arrayWithObjects:
                [UIImage imageNamed:@"diceholderAni.1.png"],
                [UIImage imageNamed:@"diceholderAni.2.png"],
                [UIImage imageNamed:@"diceholderAni.3.png"],
                [UIImage imageNamed:@"diceholderAni.4.png"],
                [UIImage imageNamed:@"diceholderAni.5.png"],
                [UIImage imageNamed:@"diceholderAni.6.png"],
                [UIImage imageNamed:@"diceholderAni.7.png"],
                [UIImage imageNamed:@"diceholderAni.8.png"],
                [UIImage imageNamed:@"diceholderAni.9.png"],
                [UIImage imageNamed:@"diceholderAni.10.png"],
                nil];
    imgBecher.animationImages = AniArray;
    [imgBecher setAnimationRepeatCount:1];
    imgBecher.animationDuration = 1;
    [imgBecher startAnimating];

到目前为止一切都很好。现在我调用一个循环:

[NSTimer scheduledTimerWithTimeInterval:1.0/60 target:self selector:@selector(gameLoop) userInfo:nil repeats:YES];

-(void)gameLoop {
    NSLog(@"%i",imgBecher.isAnimating);
}

现在 gameLoop 一直触发 1,没有看到动画结束。

但是只要我在任何地方触摸屏幕,它就会触发 0,就像它应该的那样。

稍后我需要这个,我有 4 个动画,应该在没有任何用户操作的情况下一个接一个地播放。

提前致谢!;)

4

1 回答 1

0

可能你必须使用userInteractionEnabled属性:

imgBecher.userInteractionEnabled = NO;或者self.view.userInteractionEnabled = NO;

于 2012-05-14T09:16:32.153 回答