检查从其他视图控制器 AFNetworking 下载 iOS
Check download from other view controller AFNetworking iOS
我有一个 ViewController,里面有一个 UITableView
,它列出了服务器上的文件。这个 Table 的每个 Cell 都有一些指示器 显示下载进度 和其他内容。
问题:
当我返回其他 ViewController 并使用 Table 视图返回控制器时,单元格中的进度和指示器看起来好像文件没有在下载,但是文件仍在后台下载。
我可能的解决方案:
有一个全局 NSMutableArray
包含几个 NSDictionary
对象中的所有下载(每个字典都是一个下载,它有进度,行的索引)。
如果我用 Table 退出我的 ViewController 然后回来,我会检查是否有任何正在进行的下载(通过计算下载数组中的对象)并启动一个计时器,它将更新每个项目
下载数组并将更改推送到 Table 视图。
(我使用 AFURLConnectionOperation
,用 progressBlock
更新指标)
有更好的解决办法吗?
谢谢!
你的 mutable 数组是一个简单的全局数组还是一些单例数组,或者应用程序委托或根视图控制器的 属性 由你决定,但这个想法是正确的,拉从呈现的视图控制器本身协调下载。
不过,似乎不对劲的是计时器的使用。而不是轮询下载进度并相应地更新 table 的计时器,我会建议一些基于通知的方法,下载程序 post 通知 [NSNotificationCenter defaultCenter]
作为下载 progress/complete 和然后让视图控制器将自己注册为这些通知的观察者,并在收到通知时更新 UI。
我建议您完成本教程:
http://www.raywenderlich.com/51127/nsurlsession-tutorial
这应该会给您关于如何处理您的案件的答案。
我有一个 ViewController,里面有一个 UITableView
,它列出了服务器上的文件。这个 Table 的每个 Cell 都有一些指示器 显示下载进度 和其他内容。
问题:
当我返回其他 ViewController 并使用 Table 视图返回控制器时,单元格中的进度和指示器看起来好像文件没有在下载,但是文件仍在后台下载。
我可能的解决方案:
有一个全局 NSMutableArray
包含几个 NSDictionary
对象中的所有下载(每个字典都是一个下载,它有进度,行的索引)。
如果我用 Table 退出我的 ViewController 然后回来,我会检查是否有任何正在进行的下载(通过计算下载数组中的对象)并启动一个计时器,它将更新每个项目 下载数组并将更改推送到 Table 视图。
(我使用 AFURLConnectionOperation
,用 progressBlock
更新指标)
有更好的解决办法吗? 谢谢!
你的 mutable 数组是一个简单的全局数组还是一些单例数组,或者应用程序委托或根视图控制器的 属性 由你决定,但这个想法是正确的,拉从呈现的视图控制器本身协调下载。
不过,似乎不对劲的是计时器的使用。而不是轮询下载进度并相应地更新 table 的计时器,我会建议一些基于通知的方法,下载程序 post 通知 [NSNotificationCenter defaultCenter]
作为下载 progress/complete 和然后让视图控制器将自己注册为这些通知的观察者,并在收到通知时更新 UI。
我建议您完成本教程:
http://www.raywenderlich.com/51127/nsurlsession-tutorial
这应该会给您关于如何处理您的案件的答案。