searchDisplayController消息发送到解除分配的实例(仅在iOS7中)

时间:2014-02-19 04:45:34

标签: ios7 exc-bad-access searchdisplaycontroller

这是我在AppDelegate

中的代码
iMapView = [[iMapViewController alloc] init];
    if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
    {
        CGSize result = [[UIScreen mainScreen] bounds].size;
        if(result.height == 568)
        {
            iMapView.view.frame = CGRectMake(0, 0, 568, 320);
        }
    }

    [viewController.view addSubview:iMapView.view];  // crashing here

我打开NSZombie并发现了问题:

[iMapViewController searchDisplayController]: message sent to deallocated instance 0xd81d740

但我从未在任何地方使用searchDisplayController或其代表。

@interface iMapViewController : UIViewController<UIAlertViewDelegate>

仅在具有非ARC的iOS 7中发生。

你可以给我一些建议吗?

谢谢

1 个答案:

答案 0 :(得分:1)

执行此操作后,请勿创建视图控制器的全局实例。

iMapViewController *newObject = [[iMapViewController alloc]initWithNibName:@"iMapViewController" bundle:nil];  

可能是您正在发布iMapView并再次访问它。