MKMap视图仅显示网格不显示地图视图

时间:2013-12-13 11:37:39

标签: ios objective-c iphone mapkit

在我的应用程序中,我使用MKMapView在地图视图中显示一些位置。它显示地图很好。但是从昨天起它只显示网格而不显示地图,当我添加委托方法时,它会在mapviewdidfiailtoload中显示。

我正在使用以下代码

// MapView的

myMapView=[[MKMapView alloc] initWithFrame:CGRectMake(0,gameNameLabel.frame.size.height, 320, 181)];
myMapView.mapType=MKMapTypeStandard;
myMapView.delegate=self;
LocationModel *loc=presentGame.location;
NSArray *cordinates=[loc.geoCordinates componentsSeparatedByString:@","];

CLLocationCoordinate2D zoomLocation;
zoomLocation.latitude = [[cordinates objectAtIndex:0] doubleValue];
zoomLocation.longitude= [[cordinates objectAtIndex:1] doubleValue];
MKCoordinateRegion viewRegion = MKCoordinateRegionMakeWithDistance(zoomLocation, 0.5*METERS_PER_MILE, 0.5*METERS_PER_MILE);
// 3
MKCoordinateRegion adjustedRegion = [myMapView regionThatFits:viewRegion];
// 4
[myMapView setRegion:adjustedRegion animated:YES];     [scroll addSubview:myMapView];
Place  *pin = [[Place alloc] init];
pin.name = loc.gameLocation;
pin.latitude = [[cordinates objectAtIndex:0] doubleValue];
pin.longitude =  [[cordinates objectAtIndex:1] doubleValue];
PlaceMark* Place1 = [[PlaceMark alloc] initWithPlace:pin];
Place1.tagg=1;
[myMapView addAnnotation:Place1];
//end of mapview

- (MKAnnotationView *)mapView:(MKMapView *)mapView1 viewForAnnotation:(id)annotation {

static NSString *identifier = @"PlaceMark";
if ([annotation isKindOfClass:[PlaceMark class]]) {

    MKPinAnnotationView *annotationView = (MKPinAnnotationView *) [mapView1 dequeueReusableAnnotationViewWithIdentifier:identifier];
    annotationView.tag=[mapView1.annotations count];
    if (annotationView == nil) {
        annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:identifier];
    } else {
        annotationView.annotation = annotation;
    }
    annotationView.enabled = YES;
    annotationView.canShowCallout = YES;
    return annotationView;
}

return nil;

}

METERS_PER_MILE定义为1609.344 我已经在.h文件中设置了委托。

一切都工作正常,但现在只显示网格,显示Pin atleaset

2 个答案:

答案 0 :(得分:8)

我有同样的问题MKMap View显示只有网格不显示地图视图。我发现它与我在Mac上的时间/日期所做的更改有关。当我将时间和日期固定为当前时间时,地图再次起作用。

答案 1 :(得分:0)

iOS模拟器附带官方地图应用程序。打开它并验证它是否可以获得磁贴,这可能是一个网络问题。如果地图应用未显示任何图块,则说明您遇到网络问题。

您可以尝试通过更改行来关闭动画

[myMapView setRegion:adjustedRegion animated:YES];

通过

[myMapView setRegion:adjustedRegion animated:NO];