如何使用来自另一个类的urlSession中的变量

时间:2018-09-05 01:50:07

标签: ios swift4 progress urlsession

我正在尝试使用urlSession顺序下载多个文件。

我有这个代码,它位于其他类的扩展中。我希望能够在viewcontroller类中使用变量progress,以便使用它在屏幕上显示下载进度。

如何将变量从另一个类的扩展传递到viewcontroller类中?

func urlSession(_ session: URLSession, downloadTask: URLSessionDownloadTask, didWriteData bytesWritten: Int64, totalBytesWritten: Int64, totalBytesExpectedToWrite: Int64) {

    let progress = Double(totalBytesWritten) / Double(totalBytesExpectedToWrite) * 100

1 个答案:

答案 0 :(得分:2)

扔掉您的progress变量。 URLSessionDownloadTask本身提供{Progress类的progress对象。它可以精确地解决这类问题,因为可以从任何地方观察Progress对象(或者可以将其直接分配给UIProgressView的observedProgress)。只需研究Progress类,就可以清楚地做什么。