当setrepeatcount不为0时,我的动画不显示

时间:2014-07-08 02:39:41

标签: ios objective-c

https://www.youtube.com/watch?v=EjjPkmcwdQc

您好。

我完全按照上面的教程。但是,当我将setrepeatcount的数量更改为不为0时,动画不会出现。它只是空白。谁能告诉我为什么会这样?这很有效,即使我的值为5000.我也不认为动画播放得太快,因为当它为0时,每帧都会在合理的时间内出现(.5s)。

这是viewcontroller文件中的代码示例。 IT是onl

#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad
{
    [super viewDidLoad];

    AnimPanel.animationImages = [NSArray arrayWithObjects:
          [UIImage imageNamed:@"Anim1.png"],
          [UIImage imageNamed:@"Anim2.png"],
                                 [UIImage imageNamed:@"Anim3.png"],nil];

    AnimPanel.animationDuration = 2.5;
   // [AnimPanel setAnimationRepeatCount:5000];
        [AnimPanel startAnimating];
        // Do any additional setup after loading the view, typically from a nib.
    }

1 个答案:

答案 0 :(得分:0)

setAnimationRepeatCount与更快或更慢的动画无关,这只会重复您的动画计数次数。 如果您在下面的代码段中将重复计数设置为1,则无法看到任何动画,但是当您设置任何值时,您将会看到> 1。

- (void)viewDidLoad
{

    AnimPanel.animationImages = [NSArray arrayWithObjects:
          [UIImage imageNamed:@"Anim1.png"],
          [UIImage imageNamed:@"Anim2.png"],
                             [UIImage imageNamed:@"Anim3.png"],nil];

    AnimPanel.animationDuration = 2.5;
   // [AnimPanel setAnimationRepeatCount:5000];
    [AnimPanel startAnimating];
    // Do any additional setup after loading the view, typically from a nib.

    [super viewDidLoad];
}

原因: - 为什么它没有显示为计数1是视图在显示视图之前调用了加载,因此如果您想要只有一次动画,可以将此动画代码从viewDidLoad移动到viewDidAppear方法,即使repeatCount为1,您也可以看到动画。

-(void)viewDidAppear:(BOOL)animated{
     [super viewDidAppear:animated];

   // write your code here.
 }