我怎么知道哪个ViewController是活动的?

时间:2011-12-12 21:07:39

标签: ios uiviewcontroller nsoperationqueue concurrent-programming

我正在使用NSOperationQueue下载图片。

图像下载完成后,我想调用视图控制器的方法reloadView

但是,当下载正在进行时,用户很可能已移至其他视图。此其他视图也将采用reloadView方法(例如,第一个视图显示下载的总图像数,第二个显示下载图像的缩略图)

基本上我想要的是每当图像下载完成时,我应该能够调用活动视图控制器的reloadView方法,无论它是什么?

这怎么可能?

1 个答案:

答案 0 :(得分:3)

我不会采取这种方法。这就是NSNotificationCenter的设计目标。图像下载完毕后,发布通知。在需要了解它的视图控制器中,在viewDidAppear:中侦听通知并停止在viewDidDisappear:中收听。您的下载代码无需了解视图控制器的详细信息或状态。