2013-11-24 71 views
1

我想添加一個映射到我的ViewController,但它在init方法上崩潰。這是我的代碼:MKMapView alloc initWithFrame崩潰

在TAMap.h:

#import <Foundation/Foundation.h> 
#import <MapKit/MapKit.h> 

@interface TAMap : UIViewController<MKMapViewDelegate> 
    @property (nonatomic, strong) MKMapView *mapView; 
@end 

在TAMap.m:

@implementation TAMap 

@synthesize mapView = _mapView; 

- (void)viewDidLoad { 

    [super viewDidLoad]; 
    // Crashes here: 
    self.mapView = [[MKMapView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)]; 

我使用ARC和我的代碼似乎是完全通用。我環顧四周,處處都是用於添加地圖視圖的相同代碼。但它與EXE_BAD_ACCESS崩潰。我錯過了什麼?

+1

我沒有看到顯示的代碼有問題。你確定它在特定的線路上崩潰嗎?在那裏放置一個斷點,逐行執行代碼。 TAMap是如何創建和呈現的?在initWithFrame之後的viewDidLoad中有什麼代碼? – Anna

+0

謝謝,@AnnaKarenina。這很奇怪,我改變了我的mac上的應用程序文件夾的位置,現在崩潰消失了。我不知道發生了什麼事情,但看起來像我的問題解決了,有點。 – Eddy

+0

真的很奇怪:) –

回答

0

我的工作代碼:

- (void)viewDidLoad 
{ 
[super viewDidLoad]; 

MKMapView *mapView = [[MKMapView alloc] initWithFrame:self.view.frame]; 
[self.view addSubview:mapView]; 
}