使用重写的init方法更改视图后,iPhone应用程序崩溃

时间:2012-12-19 06:04:26

标签: ios objective-c map mapquest

所以我正在尝试将MQMapView从一个视图控制器传递到另一个视图控制器:

MapSearchView *controller = [[MapSearchView alloc] initWithNibName:@"MapSearchView" bundle:nil mapToDisplay:map];

[self presentModalViewController:controller animated:NO];

我在MapSearchView。我正在做的是覆盖init方法:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil mapToDisplay:(MQMapView*)map
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        [self setMapView:map];
    }
    return self;
}

我在视图之间传递MQMapView,因为我在第一个视图中需要对地图进行一些计划的功能。

我遇到的问题是,一旦controller被分配,它就会传递给presentModalViewController并且应用程序崩溃了。我似乎无法找到任何理由。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

问题是无法找到xib文件

更改此行

MapSearchView *controller = [[MapSearchView alloc] initWithNibName:@"MapSearchView" bundle:nil mapToDisplay:map];

MapSearchView *controller = [[MapSearchView alloc] initWithNibName:@"MapSearchView" bundle:[NSBundle mainBundle] mapToDisplay:map];

另一件事......检查xib文件的名称MapSearchView