隐藏注释副标题,或更改颜色

时间:2012-02-04 09:36:54

标签: iphone ios mkmapview mkannotation

在我的应用中,我将字幕添加到注释引脚,但不想用引脚显示。我只是用它来编码。如何隐藏或更改字幕颜色?

2 个答案:

答案 0 :(得分:1)

如果我正确理解您的问题,您正在使用pin字幕进行某些处理,并且不希望在引脚上显示它。如果您使用默认标注,则无法更改字幕颜色或在分配annotation.subtitle = @"some subtitle"后隐藏字幕颜色。

我建议,在注释中添加另一个变量并为该变量指定字幕(annotation.newSubtitle = @"some subtitle"),不要为字幕属性分配任何内容。然后,您可以使用annotation.newSubtitle完成您要执行的所有处理。

如果您不愿意向注释中添加新变量,则必须实现自定义标注,这很乏味。

修改: 您将找到以下用于将NSString分配给注释的有用信息。

@interface MyAnnotation : NSObject<MKAnnotation> {
NSString *newSubTitle;
}
@property(retain,readwrite, nonatomic) NSString *newSubTitle ;
@end

在实施部分

@implementation MyAnnotation
@synthesize mSubTitle;
-(void)setNewSubTitle:(NSString *)SubTitle{
    self.newSubTitle  = SubTitle;
}
@end

分配

[annotation setNewSubTitle: @"some text"];

用于访问

myString = annotation.newSubtitle

答案 1 :(得分:1)

如果要访问每个特定注释的任何字符串,可以使用NSMutableDictionary并将注释添加为键。之后你可以在

中访问它
-(void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control {