iOS:更改设备方向时发送到实例的无法识别的选择器 我试图在iPad屏幕中间显示一个小控制器。

iOS:更改设备方向时发送到实例的无法识别的选择器 我试图在iPad屏幕中间显示一个小控制器。,ios,ipad,cocoa-touch,uiviewcontroller,Ios,Ipad,Cocoa Touch,Uiviewcontroller,-(void)showDownloadDialog { if (self.downloadDialogViewController == nil) { self.downloadDialogViewController = [[DownloadDialogViewController alloc] initWithNibName:@"DownloadDialogViewController" bundle:nil]; } self.downloadDialogViewControl

-(void)showDownloadDialog {


if (self.downloadDialogViewController == nil)
{
    self.downloadDialogViewController = [[DownloadDialogViewController alloc] initWithNibName:@"DownloadDialogViewController" bundle:nil];
}

self.downloadDialogViewController.view.center = CGPointMake(SCREEN_WIDTH/2, SCREEN_HEIGHT/2);

if(LTIsPhone()) {

    [self presentViewController:_downloadDialogViewController animated:NO completion:nil];
    return;
}

if(_darkBackgroundView == nil)
{
    _darkBackgroundView = [[UIView alloc] init];
    _darkBackgroundView.backgroundColor = [UIColor colorWithWhite:0.1 alpha:0.5];
}

_darkBackgroundView.frame = CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
self.downloadDialogViewController.view.center = CGPointMake(SCREEN_WIDTH/2, SCREEN_HEIGHT/2);
UIWindow *window = [[UIApplication sharedApplication] keyWindow];
[window addSubview:_darkBackgroundView];
[window addSubview:self.downloadDialogViewController.view];}
它确实出现了,但在我翻转iPad并尝试按下屏幕上的任何控件后,出现了无法识别的选择器错误。找不到我的IBActions

-[__NSArrayM lowResButtonDidFire:]: unrecognized selector sent to instance 0x18a95770

当我呈现ViewController时,一切工作都完美无缺,但当我处理添加到view上的控制器时,崩溃就发生了。如何修复它?先谢谢你

在代码中,您在哪里注册LowResButtonDifire:的通知?是否在对象解除分配之前取消注册?可能意味着您的视图控制器正在解除分配,但其视图未从窗口中删除,因此视图中的触摸处理程序正在调用解除分配的对象。您可以通过打开僵尸来确认这一点。downloadDialogViewController是如何定义的?@property strong,非原子downloadDialogViewController*downloadDialogViewController;已启用NSZombies-[下载对话框ViewController性能选择器:withObject:withObject:]:消息已发送到解除分配的实例0x16eb4560