Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 用tvOS实现基本动画_Swift_Uiview_Tvos_Animatewithduration - Fatal编程技术网

Swift 用tvOS实现基本动画

Swift 用tvOS实现基本动画,swift,uiview,tvos,animatewithduration,Swift,Uiview,Tvos,Animatewithduration,我希望有人能帮助我理解为什么我的tvOS动画没有运行 在我的代码中,我有这样一个函数: func testAnimation() { clockLabel.alpha = 0.0 UIView.animateWithDuration(1.0, animations: { self.clockLabel.alpha = 1.0 }) } 我正在从我的viewDidLoad()中调用testAnimation(),但似乎从未发生过动画 我已经测试了几种不同类

我希望有人能帮助我理解为什么我的tvOS动画没有运行

在我的代码中,我有这样一个函数:

func testAnimation() {
    clockLabel.alpha = 0.0
    UIView.animateWithDuration(1.0, animations: {
        self.clockLabel.alpha = 1.0
    })
}
我正在从我的
viewDidLoad()
中调用
testAnimation()
,但似乎从未发生过动画

我已经测试了几种不同类型的动画,从位置到不透明度,但似乎没有动画在模拟器中实际运行


此时,我的应用程序没有焦点。我所要做的就是加载一个空白的代码> UIVIEW/CODE >中间有一个渐变的标签。

< P>我可以确认这种行为,因为这也发生在我身上。我所做的是将延迟设置为0.1(afterDelay:),它“足够好”

另一方面,真正起作用的是为我的视图设置一个转换。例如(尽管是objc):


也许这是tvOS中的一个bug,我可以确认这种行为,因为这种情况也发生在我身上。我所做的是将延迟设置为0.1(afterDelay:),它“足够好”

另一方面,真正起作用的是为我的视图设置一个转换。例如(尽管是objc):


也许这是tvOS中的一个bug,您试图在显示
UILabel
之前对其设置动画。将动画从
viewdiload()
移动到
viewdilease()

在显示
UILabel
之前,您正在尝试为其设置动画。将动画从
viewDidLoad()
移动到
ViewDidDisplay()

尝试使用UIView动画,如下所示(Swift):


这对我们来说很有效。

尝试使用UIView动画,如下所示(Swift):


这在我们这边有效。

请在viewDidLoad中共享您的代码。请在viewDidLoad.Yup中共享您的代码。那帮我修好了。奇怪的是,它在iOS应用程序上的行为有所不同,但无论如何,这可能是令人担忧的原因。谢谢你,不过,这已经解决了我的问题!是的。那帮我修好了。奇怪的是,它在iOS应用程序上的行为有所不同,但无论如何,这可能是令人担忧的原因。谢谢你,不过,这已经解决了我的问题!我不推荐这个。如果加载后系统显示视图的时间超过
0.1
,会发生什么情况?我不建议这样做。如果加载视图后系统显示视图的时间超过
0.1
,会发生什么情况?
    CGAffineTransform scaleTransform = CGAffineTransformMakeScale(0.5,0.5);
         [UIView animateWithDuration: 0.5 animations:^{
         _myView.transform = scaleTransform;
    } completion: nil]
clockLabel.alpha = 0
  UIView.animateWithDuration(0.5, delay: 0.0, options: .Linear, animations: {
    self.clockLabel.alpha = 1.0

  }, completion: { finished in
    // you may add some code here to make another action right after the animation end, or just delete this comment :)
  })