使用文本更改动画WKInterfaceLabel apple watch swift

时间:2017-09-13 04:54:56

标签: ios animation apple-watch watch-os-2 wkinterfacelabel

我正在开发一个苹果手表应用程序。在应用程序中,我有一个视图,用户可以在3个给定结果之间左右滑动。我使用WKInterfaceLabel来显示结果信息。在每次滑动时,标签都会使用新文本进行更新。

查看屏幕截图:

Results screen

我想在滑动时为文本更改设置动画。我怎么能这样做?

我们将不胜感激。 谢谢!

2 个答案:

答案 0 :(得分:2)

这不是很优雅,但应该有效:
您可以淡出WKInterfaceLabel的内容,并在其位置淡入另一个标签。因此,将2个WKInterfaceLabel个对象放在同一个地方。其中一个是可见的(alpha = 1.0)而另一个是不可见的(alpha = 0.0)。
滑动时,确定应显示的新值,并将其设置为不可见标签 然后,使用animate(withDuration:animations:)的函数WKInterfaceController为转换设置动画。在动画块中,根据需要更改alpha值,例如

animateWithDuration(1.0) {
    self.visibleLabel.setAlpha(0.0)
    self.invisibleLabel.setAlpha(1.0)
}  

希望这有帮助!

答案 1 :(得分:2)

尝试: -

 func labelimage(img: UIImageView) {
        print(labelrate.hidden)
        if (labelrate.hidden) {
            UIView.animateWithDuration(0.5, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: {
                self.labelrate.alpha = 1
            }, completion: nil)
        }
        else {
            UIView.animateWithDuration(0.5, delay: 0, options: UIViewAnimationOptions.CurveEaseInOut, animations: {
                self.labelrate.alpha = 0
            }, completion: nil)
        }
        self.labelrate.hidden = !self.labelrate.hidden
    }