在我宣布两个实例变量我的主要的viewController如下:驳回一个UIPopoverController不卸载contentController
UIPopoverController* __popoverController;
HPSQuestionnaireEditorController* _questionnaireEditorController;
我再展UIPopOver如下:
_questionnaireEditorController = [ [ HPSQuestionnaireEditorController alloc ] initWithNibName:nil bundle:nil ];
__popoverController.delegate = self;
[__popoverController setPopoverContentSize:CGSizeMake(400, 500)];
[_questionnaireEditorController setContentSizeForViewInPopover:CGSizeMake(400, 500)];
[__popoverController presentPopoverFromRect:editWrapper.frame inView:editWrapper.superview permittedArrowDirections:UIPopoverArrowDirectionLeft | UIPopoverArrowDirectionRight animated:YES ];
到时候解雇popover我手动这样做如下:
[__popoverController dismissPopoverAnimated:YES ];
__popoverController = nil;
_questionnaireEditorController.view=nil;
_questionnaireEditorController=nil;
我正在使用ARC。
内_questionnaireEditorController我有以下几点:
- (void)viewWillUnload
{
NSLog(@"HPSQuestionnaireEditorController viewWillUnload starting");
}
然而,这绝不运行。 popover解除似乎并未实际卸载视图或托管在其中的控制器。
我在做什么错?谢谢。
麻烦是我真的要卸载控制器 - 我依靠viewWillUnload取消注册一些通知 – whatdoesitallmean 2012-08-17 14:14:24
你不应该那样做。您应该在viewWillDisappear或ViewDidDisappear上取消注册通知。一般来说,当然。 – 2012-08-17 14:23:48
非常感谢 – whatdoesitallmean 2012-08-17 14:40:23