ios - 如何在 watchkit 的连续范围内制作动画?

标签 ios swift watchkit

我在 WKInterfacecontroller 上有一个图像。我有 10 个图像帧(frame_0.png 到 frame_9.png)

在正常情况下,当我们想要使该图像具有动画效果时,我们可以简单地这样做:

stopWatchAnimateImage.setImageNamed("frame_")
stopWatchAnimateImage.startAnimating()

或者我们可以使用 Range 制作动画:

stopWatchAnimateImage.setImageNamed("frame_")
stopWatchAnimateImage.startAnimatingWithImagesInRange(NSMakeRange(0, 9) , duration: 10 , repeatCount: 0)

但现在我希望我的图像从 frame_3 开始动画,并在图像运行到 frame_9 后继续制作动画

(我的图像将从第 3 -4 -5 帧运行....到第 9 帧,依此类推继续到 0 -1 - 2- 3..) 我怎样才能做到这一点? 我已经试过了:

stopWatchAnimateImage.startAnimatingWithImagesInRange(NSMakeRange(3, 9) , duration: 6 , repeatCount: 0)

但不工作,这个:

stopWatchAnimateImage.setImage(UIImage(named: "frame_3"))
stopWatchAnimateImage.startAnimating()

但是我的图像变成了空白。

最佳答案

在检查了一些解决方案之后,最后我们可以像这样简单化: 制作一个带有范围的动画并制作延迟时间,之后我们可以继续制作这样的动画:

stopWatchAnimateImage.setImageNamed("frame_")
stopWatchAnimateImage.startAnimatingWithImagesInRange(NSMakeRange(3, 9) , duration: 7 , repeatCount: 1)
dispatch_after(dispatch_time(
            DISPATCH_TIME_NOW,
            Int64(7 * Double(NSEC_PER_SEC))
            ), dispatch_get_main_queue(), { () -> Void in
                self.stopWatchAnimateImage.startAnimating()

        })

关于ios - 如何在 watchkit 的连续范围内制作动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28790995/

相关文章:

ios - setStatusBarHidden :withAnimation doesn't cause subviews to auto-place correctly

iphone - 如何编写代码以停止多个音频文件 swift 移动?

swift - 身份验证按钮在 Fabric Digits Integration 中不可见

swift - swift 中 Any.Type 的大小

swift - 如何在 iPhone 电池电量为 10% 时收到通知

ios - Apache Cordova IOS键盘移动页眉和页脚

ios - 如何使用 NSPredicate 过滤数组以获取单词组合

ios - 从Apple Watch(而不是iPhone)获取加速度计和陀螺仪数据?

swift - 环境变量未传递给 subview

ios - 如何从地址簿中删除多个联系人