【问题标题】:iOS Image AnimationiOS 图像动画
【发布时间】:2015-02-11 18:16:43
【问题描述】:

我想在使用 iOS 8 的 iPhone 中显示玻璃装满水的图像。例如,我可以获得玻璃的白色背景图像(显示空玻璃),并且水的颜色可能是浅灰色。

  • 是否可以选择填充玻璃的背景颜色(间隔) 这样看起来好像杯子真的装满了水?

  • 我可以绘制完整的图像(玻璃已经装满水)吗? 从下到上部分显示类似的效果?

有任何选项可以显示/制作此类图像的动画吗?

【问题讨论】:

  • 你有一些水的图像,或者你想以编程方式显示它吗?
  • 我没有任何水的图像,但想用颜色(例如灰色)来描绘水。我希望通过代码完成
  • 我做了一个示例项目,我通过代码为温度计设置了动画:(甚至是玻璃),也许你可以从中找到一些灵感:github.com/micazeve/MAThermometer

标签: ios iphone image


【解决方案1】:

使用UIImageView,您可以这样做,为每一帧创建一个图像:

images = @[[UIImage imageNamed:@"img1.png"],
           [UIImage imageNamed:@"img2.png"],
           [UIImage imageNamed:@"img3.png"]];
[imageView setAnimationImages:testArray] ;
imageView.animationDuration = 0.5;
imageView.animationRepeatCount = 1;
[imageView startAnimating];

另一种方法是让UIView's/UIImageView's 组合,例如UIImageView 在前面,用它作为面具,另一个在后面,只使用简单的UIView 动画。

但无论如何,这样的动画可以通过多种方式完成,这取决于您的需求以及该动画应该有多好。

【讨论】:

  • 我读到了关于为动画堆叠图像的信息,但这不会在动画图像时引入时间延迟。我只想让用户看到装满水的玻璃,而不是每次都翻转整个图像。如果我使用 UIView 动画,是否也会引入时间延迟。我的意思是,用户会知道它的图像被翻转了吗?
  • UIView 动画不应该引入滞后,无论如何,如果你想让它动画,你需要用动画来做。我建议你首先不要关心滞后,就去做吧:)
  • 我确实将您的代码与其他东西一起使用,并且它确实是第一次工作。但是,当我尝试将它与 LaunchScreen 集成时,它停止工作
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-06-06
  • 2011-08-08
  • 2013-05-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-24
相关资源
最近更新 更多