MKAnnotation — добавление URL

#iphone #url #mkannotation

#iPhone #url #mkannotation

Вопрос:

Я работаю с примером кода mayurbirari для создания представления mapkit, я хочу добавить URL во всплывающее окно. Я пытался понять ссылку Apple на подкласс, но, к сожалению, это просто не получается.

Мне нужно создать подкласс, к которому можно добавить дополнительную переменную, поскольку MKANNOTATION является основным файлом и не может быть изменен — поэтому, как мне это сделать?? Я запутался в том, как это настроить.

код можно найти здесь —> http://mayurbirari.wordpress.com/2011/02/07/how-to-access-mkmapkit-in-iphone

если бы кто-нибудь мог показать мне пример подкласса с добавленным к нему URL, это, вероятно, было бы понятно, но все примеры, которые я нашел, кажутся слишком сложными.

Ответ №1:

MKAnnotation — это протокол, который вы должны принять в своем собственном классе — независимо от того, какой класс вы используете для представления объекта аннотации. Часто это класс, являющийся частью вашей модели данных. Например, у вас может быть класс Person, и вы хотите отобразить экземпляры Person на карте. Вы бы приняли MKAnnotation лично. Для этого легко использовать свойства:

 @interface Person : NSObject <MKAnnotation>
{
   //...
}
//...
@property (nonatomic, readonly) CLLocationCoordinate2D coordinate;
@property (nonatomic, retain) NSString *title;
@property (nonatomic, retain) NSString *subtitle;
@end
  

А затем реализуйте методы из MKAnnotation в своем классе:

 @implementation Person

@synthesize coordinate;
@synthesize title;
@synthesize subtitle;

//...various methods of Person...

@end
  

Теперь вы можете добавлять экземпляры Person на карту в качестве аннотаций.