繁体   English   中英

如何在Swift中淡入和淡出ActivityIndi​​cator?

[英]How to fade in and out an ActivityIndicator in Swift?

这是我的活动指标:

self.activityIndicator = UIActivityIndicatorView(activityIndicatorStyle: UIActivityIndicatorViewStyle.WhiteLarge)
self.activityIndicator.center = self.view.center
self.view.addSubview(activityIndicator)

我可以这样做self.activityIndicator.startAnimating()并停止self.activityIndicator.stopAnimating() 我希望过渡在停止时更加流畅,并认为最好在400毫秒内淡出该元素,而不是在我调用stopAnimating时将其隐藏。

有关如何执行此操作的任何想法?

    // Set initial state
    self.activityIndicator.alpha = 0.0

    // To show
    self.activityIndicator.startAnimating()
    UIView.animateWithDuration(0.4) {
        self.activityIndicator.alpha = 1.0
    }

    // To hide
    UIView.animateWithDuration(0.4, animations: {
        self.activityIndicator.alpha = 0.0
    }) { complete in
        self.activityIndicator.stopAnimating()
    }

活动指示器是UIView对象。 这样,您可以在其上使用UIView动画。 这个怎么样:

func stopActivityIndiator()
{
  UIView.animateWithDuration(0.4, animations: 
  {
    self.activityIndicator.alpha = 0;
  }
  completion:
  {
    (completed) -> () in
    self.activityIndicator.stopAnimating()
    self.activityIndicator.hidden = true
    self.activityIndicator.alpha = 1.0
  }
  )
}

假设您有一个实例变量activityIndi​​cator,该代码应将其淡出0.4秒,然后停止并隐藏它(以便下次使用)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM