【发布时间】:2014-01-12 13:31:42
【问题描述】:
我在尝试在地图注释上显示标注时遇到此异常,即使已设置标题也是如此。
这是我在 MapAnnotation 类中使用的 init 方法:
- (id)initWithTitle:(NSString *)ttl subtitle:(NSString *)sub andCoordinate:(CLLocationCoordinate2D)c2d {
titles = ttl;
coordinate = c2d;
subtitle = sub;
return self;
}
然后,在另一个类的某个地方,我正在创建注释(两种不同的方法中的 2 个):
MapAnnotation *annotation = [[MapAnnotation alloc] initWithTitle:[formatter stringFromDate:sourceDate] subtitle:@"test" andCoordinate:CLLocationCoordinate2DMake(point.latitude, point.longitude)];
[self.mapView addAnnotation:annotation];
这是注解方法:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation{
if (annotation == mapView.userLocation)
return nil;
static NSString *s = @"ann";
MKAnnotationView *pin = [mapView dequeueReusableAnnotationViewWithIdentifier:s];
if (!pin) {
pin = [[MKPinAnnotationView alloc]initWithAnnotation:annotation reuseIdentifier:s];
pin.canShowCallout = YES;
pin.image = [UIImage imageNamed:@"pin.png"];
pin.calloutOffset = CGPointMake(0, 0);
}
return pin;
}
我想做的另一件事是为两个地图注释使用两个不同的图像。 有什么想法吗?
谢谢。
【问题讨论】:
-
你遇到了什么错误?
-
@Daij-Djan 问题标题中的那个。
-
没有错误信息什么的
-
如果标题是你的错误信息,那么意思似乎很清楚:D
标签: ios map mkannotation mkannotationview