Swift 中的 UIActivityIndicator:你如何开始和结束它?
UIActivityIndicator in Swift: how do you start and end it?
我正在尝试做这样的事情:
@IBOutlet weak var myActivityMonitor: UIActivityIndicatorView!
func doStuff(){
myActivityMonitor.startAnimating()
//stuff running here
myActivityMonitor.stopAnimating()
}
但它没有同步启动或停止。基本上,如果我删除止损点,在完成我需要的计算后,它看起来总是 运行。评论中的部分涉及从 HTML link 下载图像。
有什么解决办法吗?
谢谢,
当 运行 网络调用时,它们通常是 运行 异步的,这意味着任务被移交给另一个线程并在那里完成。这个问题是它不会等到任务完成才停止动画,导致 myActivityMonitor
几乎同时开始和结束。
要解决此问题,只需确保 myActivityMonitor
可在 doStuff
方法之外访问并在其他地方调用 myActivityMonitor.stopAnimating()
;最好在委托方法中告诉您数据已完成加载。
我正在尝试做这样的事情:
@IBOutlet weak var myActivityMonitor: UIActivityIndicatorView!
func doStuff(){
myActivityMonitor.startAnimating()
//stuff running here
myActivityMonitor.stopAnimating()
}
但它没有同步启动或停止。基本上,如果我删除止损点,在完成我需要的计算后,它看起来总是 运行。评论中的部分涉及从 HTML link 下载图像。
有什么解决办法吗?
谢谢,
当 运行 网络调用时,它们通常是 运行 异步的,这意味着任务被移交给另一个线程并在那里完成。这个问题是它不会等到任务完成才停止动画,导致 myActivityMonitor
几乎同时开始和结束。
要解决此问题,只需确保 myActivityMonitor
可在 doStuff
方法之外访问并在其他地方调用 myActivityMonitor.stopAnimating()
;最好在委托方法中告诉您数据已完成加载。