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
Ios 核心数据保存操作完成后如何停止UIActivityIndicator_Ios_Swift - Fatal编程技术网

Ios 核心数据保存操作完成后如何停止UIActivityIndicator

Ios 核心数据保存操作完成后如何停止UIActivityIndicator,ios,swift,Ios,Swift,我有一段代码,我想开始设置UIActivityIndicator的动画,保存ManagedObjectContext,保存完成后,停止设置UIActivityIndicator的动画。以下是我现在掌握的代码: activityIndicator.hidden = false activityIndicator.startAnimating() UIView.animateWithDuration(0.6, animations: { self.title

我有一段代码,我想开始设置
UIActivityIndicator
的动画,保存
ManagedObjectContext
,保存完成后,停止设置
UIActivityIndicator
的动画。以下是我现在掌握的代码:

    activityIndicator.hidden = false
    activityIndicator.startAnimating()

    UIView.animateWithDuration(0.6, animations: {
        self.titleLabel.text = "Importing from GPX File"
        self.descriptionLabel.hidden = true
        self.okButton.hidden = true
        self.cancelButton.hidden = true
    })

    importFromGPXFile()

    activityIndicator.stopAnimating()
执行核心数据保存操作的方法是
importFromGPXFile()
。如何让活动指示器知道保存操作已完成,应该停止设置动画?

您可以尝试-

dispatch_async(dispatch_get_main_queue(), ^{
importFromGPXFile()

activityIndicator.stopAnimating()
});

您必须注意,运行循环将立即完成,以实际显示动画指示器。对主队列使用dispatch\u async就可以了。

使用委托或完成处理程序闭包。我不太了解dispatch\u async和GCD,但这段代码似乎适合我。谢谢