我在尝试使用MKMapView时遇到问题。这是我第一次尝试使用其中的一个,但我还不能弄清楚如何使用它。下面是两段不同的示例代码,我曾尝试让它工作,但都不起作用:
mapView = [[MKMapView alloc] initWithFrame:CGRectMake( 0, 0, 320, 150 )];
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance( CLLocationCoordinate2DMake( latitude, longitude ), metersPerMile*0.5, metersPerMile*0.5 );
MKCoordinateRegion adjustedRegion = [mapView regionThatFits:region];
[mapView setRegion:adjustedRegion];或
mapView = [[MKMapView alloc] initWithFrame:CGRectMake( 0, 0, 320, 150 )];
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance( CLLocationCoordinate2DMake( latitude, longitude ), metersPerMile*0.5, metersPerMile*0.5 );
[mapView setRegion:region];或
mapView = [[MKMapView alloc] initWithFrame:CGRectMake( 0, 0, 320, 150 )];
[self.mapView setRegion:MKCoordinateRegionMake(CLLocationCoordinate2DMake( latitude, longitude ), MKCoordinateSpanMake( 0.01, 0.01 ))];所有这些代码片段对MKMapView完全没有任何作用。每当视图最终加载时,它什么也不做,我只剩下查看整个北美,这是没有太大帮助的。
如果有人能帮我解决这个问题,我将不胜感激。
发布于 2012-04-16 15:02:29
您尚未将地图添加到视图中。像[self.view addSubView:mapView];一样
发布于 2012-04-16 15:10:49
我通过实现- mapView:viewForAnnotation: from MKMapViewDelegate向用户显示他所在的位置。看看这个:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id<MKAnnotation>)annotation
{
// If it's the user location, return nil.
if ([annotation isKindOfClass:[MKUserLocation class]])
{
MKCoordinateSpan coordinateSpan = MKCoordinateSpanMake(0.009, 0.009);
[mapView setRegion:MKCoordinateRegionMake(annotation.coordinate, coordinateSpan) animated:YES];
}
return nil; }
发布于 2012-05-28 11:59:44
如果您打算加载MapView,这将有所帮助
- (void)mapViewWillStartLoadingMap:(MKMapView *)mapView
{
[UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
NSLog(@"map loading...");
}https://stackoverflow.com/questions/10169795
复制相似问题