Ios7 MKUserTrackingBarButtonItem在放大时崩溃

Ios7 MKUserTrackingBarButtonItem在放大时崩溃,ios7,navigation,tracking,Ios7,Navigation,Tracking,我正在使用MKUserTrackingBarButtonItem跟踪用户。使用用户跟踪栏按钮时,我无法设置缩放。所以我试着放大屏幕。 并且应用程序在几个步骤后崩溃。 我在附近有一个坐标,我试图用它来跟踪用户相对于坐标的位置。 为什么应用程序会崩溃。 有更好的方法吗?非常感谢您的帮助。 这是我的密码:- -(void) viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; self.mapView.delegate =

我正在使用MKUserTrackingBarButtonItem跟踪用户。使用用户跟踪栏按钮时,我无法设置缩放。所以我试着放大屏幕。 并且应用程序在几个步骤后崩溃。 我在附近有一个坐标,我试图用它来跟踪用户相对于坐标的位置。 为什么应用程序会崩溃。 有更好的方法吗?非常感谢您的帮助。 这是我的密码:-

 -(void) viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];

self.mapView.delegate = self;


_coordinate1.latitude = 29.9431438;
_coordinate1.longitude = -95.5170326;

 self.mapView.showsUserLocation = YES; }


-(void) viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];


  MKCoordinateRegion region = [self regionFromLocations:self.currentLoc];

[self displayPoints];

MKCoordinateRegion adjustRegion = [self.mapView regionThatFits:region];

self.mapView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
[self.mapView setRegion:adjustRegion animated:YES]; }




- (void)viewDidLoad {

[super viewDidLoad];
 MKUserTrackingBarButtonItem *locateMeButton = [[MKUserTrackingBarButtonItem alloc] initWithMapView:self.mapView];



NSArray *toolbarItems = [NSArray arrayWithObjects: locateMeButton,
                         nil];
self.toolBar.items = toolbarItems; }





- (void)viewWillDisappear:(BOOL)animated {

NSLog(@"viewwillDisapear");

[self.mapView setUserTrackingMode:MKUserTrackingModeNone];

[super viewWillDisappear:animated];}


-(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation {
// getting current location
self.currentLoc = userLocation.location.coordinate;

NSLog(@"loc- %f   %f", self.currentLoc.longitude, self.currentLoc.latitude); }

通过在视图消失时删除地图视图解决了此问题

-虚空视图将消失:BOOLanimated{

[super viewWillDisappear:animated];

self.mapView.delegate = nil;
[self.mapView removeFromSuperview];

}

什么是崩溃错误消息?令人惊讶的是没有错误消息。当我调试控件时,它会转到main.h@autoreleasepool{…}并停留在那里的一个循环中。您必须使用nslog、断点、逐行遍历代码等进行一些调试,直到您找到导致崩溃的行以及原因。试着从这个开始:谢谢你的投入。