运行此代码时,在执行全局队列中的代码之前,不会在UI中显示spinner gif图像。
在运行其他代码时,如何使动画保持可见和动画效果。 这只是使用Appplescript / ASOC的情况吗?
class ViewController: NSViewController {
@IBOutlet weak var progresSpinnerView: NSImageView!
@objc dynamic var spinnerImage:NSImage? = nil
override func viewDidAppear() {
self.progresSpinnerView.animates = true
self.spinnerImage = NSImage(contentsOf: URL(fileURLWithPath: pathToResources() + "/" + "Spinner.gif"))
if let displayName = Bundle.appDisplayName {
print( "\(displayName) started....")
}
self.progresSpinnerView = nil
}
@IBAction func loadInfo(_ sender:Any) {
self.progresSpinnerView.image = self.spinnerImage
loadFromJob()
self.progresSpinnerView.image = nil
}
func loadFromJob() {
DispatchQueue.global(qos: .userInitiated).sync {
... run AppleScriptObjc for InDesign
DispatchQueue.main.async {
//update UI
}
... run AppleScriptObjc for InDesign
DispatchQueue.main.async {
//update UI
}
... run AppleScriptObjc for InDesign
DispatchQueue.main.async {
//update UI
}
}
}
}