0

这是我的代码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 中。

你能给我一些建议吗?

谢谢

4

1 回答 1

1

一旦这样做,不要创建视图控制器的全局实例。

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

可能是您正在释放您的 iMapView 并再次访问它。

于 2014-02-20T04:15:41.503 回答