Скрыть субтитры аннотации или изменить цвет - PullRequest
0 голосов
/ 04 февраля 2012

В моем приложении я добавляю субтитры на пин-код аннотации, но не хочу показывать их пин-кодом. Я просто использую это для целей кодирования. Как я могу скрыть или изменить цвет субтитров?

Ответы [ 2 ]

1 голос
/ 23 июля 2015

Если вы хотите получить доступ к любой строке для каждой конкретной аннотации, вы можете использовать NSMutableDictionary и добавить свою аннотацию в качестве ключа. и позже вы можете получить доступ к этому в

-(void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control {
1 голос
/ 04 февраля 2012

Если я правильно понимаю ваш вопрос, вы используете пин-субтитры для некоторой обработки и не хотите показывать их на пин-коде. Если вы используете выноску по умолчанию, то невозможно изменить цвет субтитров или скрыть его после назначения annotation.subtitle = @"some subtitle".

Я бы предложил добавить еще одну переменную в аннотацию и назначить ей субтитры (annotation.newSubtitle = @"some subtitle") и ничего не назначать для атрибута субтитров. Вся обработка, которую вы хотите сделать, может быть выполнена с помощью annotation.newSubtitle.

Если вы неохотно добавляете новую переменную в аннотацию, вам придется внедрить пользовательский вынос, который утомителен.

EDIT : Вы найдете следующее полезное, чтобы назначить 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
...