我有一些UIButtons,我想在屏幕中间按下其他不相关的东西时触发短5-10帧动画。我可以在IB中删除一个UIImageView并以某种方式以编程方式更新它吗?它不需要过于复杂,我甚至不介意它是否是硬编码的,因为它是一个如此小的项目。

感谢。

有帮助吗?

解决方案

以下是使用几帧进行动画最简单方法的示例:

声明 IBOutlet UIImageView * timerAnimation 并将其链接到IB中的UIIMageView。向您的资源添加一些图像,例如下面需要的。然后将图像加载到数组中 - 请参阅代码:

timerAnimation.animationImages = [NSArray arrayWithObjects:
      [UIImage imageNamed:@"timer00.png"],
      [UIImage imageNamed:@"timer01.png"],
      [UIImage imageNamed:@"timer02.png"],
      [UIImage imageNamed:@"timer03.png"],
      [UIImage imageNamed:@"timer04.png"],
      [UIImage imageNamed:@"timer05.png"],
      [UIImage imageNamed:@"timer06.png"],
      [UIImage imageNamed:@"timer07.png"],
      [UIImage imageNamed:@"timer08.png"],
      [UIImage imageNamed:@"timer09.png"],
      [UIImage imageNamed:@"timer10.png"],
      [UIImage imageNamed:@"timer11.png"],
      [UIImage imageNamed:@"timer12.png"],
      [UIImage imageNamed:@"timer13.png"],
      [UIImage imageNamed:@"timer14.png"],
      [UIImage imageNamed:@"timer15.png"],
      [UIImage imageNamed:@"timer16.png"],
      [UIImage imageNamed:@"timer17.png"],
      [UIImage imageNamed:@"timer18.png"],
      [UIImage imageNamed:@"timer19.png"],
      [UIImage imageNamed:@"timer20.png"],
      [UIImage imageNamed:@"timer21.png"],
      [UIImage imageNamed:@"timer22.png"],
      [UIImage imageNamed:@"timer23.png"],
      [UIImage imageNamed:@"timer24.png"],
      [UIImage imageNamed:@"timer25.png"],
      [UIImage imageNamed:@"timer26.png"],
      [UIImage imageNamed:@"timer27.png"],
      [UIImage imageNamed:@"timer28.png"],
      [UIImage imageNamed:@"timer29.png"],
      [UIImage imageNamed:@"timer30.png"],
      [UIImage imageNamed:@"timer31.png"],
      [UIImage imageNamed:@"timer32.png"],
      [UIImage imageNamed:@"timer33.png"],
      [UIImage imageNamed:@"timer34.png"],
      [UIImage imageNamed:@"timer35.png"],
  //      [UIImage imageNamed:@"timer36.png"], save last picture for "times up"
      nil];
timerAnimation.animationDuration = 5.0;
timerAnimation.animationRepeatCount = 1;
[timerAnimation startAnimating];

这将运行你的动画,直到你调用 [timerAnimation stopAnimating];

其他提示

是。为您的UIImageView创建一个IBOutlet,您可以从代码中更新它。例如,使用其 image 属性,用于设置应显示的UIImage。或者,您可以将图像添加到应用程序的资源中,并将其与Interface Builder中的UIImageView相关联。使用.png文件,因为iPhone已针对它们进行了优化 由于UIImageView是一个UIView,所有通常的核心动画方法可以使用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top