2012-05-22 34 views
0

我有一个uiwebview,通过IB连接到我的UIViewController。 在或者Controller.h,我定义UIWebview在didReceiveMemoryWarning中变为僵尸

@property (nonatomic, unsafe_unretained) IBOutlet UIWebView *myUIWebView; 

我编译为iOS 4.3,所以我需要unsafe_unretained(否则我会使用弱)

我已经设置了一个UIWebView来委托成为IB中的UIViewController。

如果控制器得到didReceiveMemoryWarning而未显示(即我在下一个屏幕上),则webView在[super didReceiveMemoryWarning]之前正确(指向有效的webView),并在调用之后成为僵尸。这是正常的吗? 我读过 因为它现在是一个僵尸,我不能将它的委托设置为控制器dealloc中的零。
因此,如果它是一个僵尸是“正常的”,我应该将代表设置为dealloc中的零吗?

感谢

回答

0

委托设为零在viewWillUnloadviewDidUnload喜欢 -

- (void)viewWillUnload { 
    [webView setDelegate:nil]; 
} 
+0

嗯...但是如果我将委托设为中的dealloc为零,它仍然会被设置...我当我'控制'控制器(当我完成购买过程并返回到主屏幕)时,已经检查并且viewWillUnload不被调用 – user1375594

+0

oups ...如果我不将代表设置为零 – user1375594