是否有必要做的事:iOS:我必须在发布UIWebView之前调用-stopLoading吗?
[webView stopLoading];
self.webView = nil;
或者,我可以离开了第一线?即-[UIWebView dealloc]
为您拨打-stopLoading
吗?
是否有必要做的事:iOS:我必须在发布UIWebView之前调用-stopLoading吗?
[webView stopLoading];
self.webView = nil;
或者,我可以离开了第一线?即-[UIWebView dealloc]
为您拨打-stopLoading
吗?
Web视图将停止加载,您不需要调用stopLoading。尽管如此,它并没有停止在dealloc中。我相信它从它的超级视图中移除时会停止。
-stopLoading
可能会被剔除,因为加载是在保留uiwebview的单独线程中完成的(作为web请求afaik的回调)。如果您发布uiwebview(例如,在-viewDidUnload
方法中),我非常确定它会停止加载,但是当它停止加载时,它将调用它的代理。
这将失败如果您未设置yourWebView.delegate = nil
,因为委托属性被定义为assign-property,因此不保留您的委托对象(最可能是一个uiviewcontroller)。没有将委托设置为零将导致EXEC_BAD_ACCESS(实际上,您可以杀死一些应用程序,在这些应用程序中,您可以非常快速地在包含webviews的子视图之间切换 - 它们在完成加载并尝试调用僵尸代理之前获得释放)。同样适用于MKMapView!