Watch App 中的动画图像不起作用 (Swift)

Animating Image in Watch App doesn't work (Swift)

我的动画图片有问题。

在我的页面中,我在中间有一个标签,用文本 "Start dictation" 初始化,底部有一个图像,初始化时没有图像

这是我的代码:

func dictation() {
        let seconds = 1.0
        let delay = seconds * Double(NSEC_PER_SEC)  // nanoseconds per seconds
        let dispatchTime = dispatch_time(DISPATCH_TIME_NOW, Int64(delay))
        dispatch_after(dispatchTime, dispatch_get_main_queue(), {
            self.label.setText("")
            self.myImage.setImageNamed("frame-")
            self.myImage.startAnimatingWithImagesInRange(NSMakeRange(0, 15), duration: 0.5, repeatCount: 0)
        })
        presentTextInputControllerWithSuggestions([], allowedInputMode: .Plain, completion: { (selectedAnswers) -> Void in
            if ((selectedAnswers != nil) && (selectedAnswers!.count>0) ){
                if selectedAnswers![0] is String {
                    self.myImage.stopAnimating()
                    self.myImage.setImageNamed("")
                    self.label.setText((selectedAnswers![0] as! String))
                }
            }
        })
}

当我的听写完成后,在显示我的文本之前有一段时间。因此,我尝试添加动画以查看它是否在进行中。

在这里,我想开始听写,在背景中开始我的动画并清除我的文本。而且,当我的演讲准备好显示时,我想停止并清除动画并打印我的文本。

我的问题是:有时,当我在听写后返回我的页面时,我发现我的第一个文本 "Start dictation" 而不是我的动画。 我尝试使用调试模式,并在所有代码中添加了断点和日志。一切都按照良好的顺序执行,但结果真的是随机的..

我还看到当我使用 stopAnimating() 时我的动画不会停止,而当我使用 setImageNamed("") 时我的动画不会清除。

你能帮我吗?

当我开始动画时,我不在主页上,所以代码被执行了,但 "self" 不是我的主页。

为了解决这个问题,当我回到主页时,我只是在 willActivate 函数中调用我的动画