Я новичок в этом, и я ударяю головой о стену, поэтому любая помощь, которую вы можете предоставить, будет оценена по достоинству.Как я могу сделать аннотации MKMapView?
Мое приложение загружает ряд координат и названий, которые я превращаю в MKAnnotations. Я реализовал протокол MKAnnotation достаточно хорошо, потому что он перестал жаловаться, но вот код:
Annotator.h:
#import <Foundation/Foundation.h>
#import "MapKit/Mapkit.h"
@interface Annotator : NSObject <MKAnnotation>
+ (Annotator *) createAnnotator:(CLLocationCoordinate2D *)coordinate
withTitle:(NSString *)title
andSubtitle:(NSString *)subtitle;
@property (nonatomic, strong) NSString *myTitle;
@property (nonatomic, strong) NSString *mySubtitle;
@property (nonatomic) CLLocationCoordinate2D *coordinate;
@end
Довольно скучный до сих пор. Вот Annotator.m:
#import "Annotator.h"
@implementation Annotator
@synthesize myTitle = _myTitle;
@synthesize mySubtitle = _mySubtitle;
@synthesize coordinate = _coordinate;
+ (Annotator *)createAnnotator:(CLLocationCoordinate2D *)coordinate
withTitle:(NSString *)title
andSubtitle:(NSString *)subtitle
{
Annotator *annotation = [[Annotator alloc] init];
annotation.myTitle = title;
annotation.mySubtitle = subtitle;
annotation.coordinate = coordinate;
return annotation;
}
- (NSString *)title
{
return self.myTitle;
}
- (NSString *)subtitle
{
return self.mySubtitle;
}
@end
Прямо сейчас, я получил большую часть другого кода в центральном контроллере представления, так как только запрос HTTP возвращается с данными, я итерация через него, создавая свою MKAnnotation объекты, а затем сделать это для каждого из них:
[self.territoryMap addAnnotation:locationPin];
... где self.territoryMap является выходом к MKMapView я перетащил в свой раскадровки, и locationPin является объектом MKAnnotation я создал с моей реализацией комментатора выше.
Некоторые из решений, на которые я смотрел, имеют методы MKMapViewDelegate, но мне кажется, что они не должны быть необходимыми, поскольку я просто ищу поведение по умолчанию. Я добавил одного делегата, который нашел, что позволило мне изменить цвет расположения местоположения пользователя, но это не то, о чем я беспокоюсь.
Есть ли что-то еще, что мне нужно делать? Я смущен! Спасибо за любую помощь, которую вы можете предоставить!
Прямо перед строкой addAnnotation поместите 'NSLog (@" coord =% f,% f; map =% @ ", locationPin.coordinate.latitude, locationPin.coordinate.longitude, self. AreaMap);'. Что он регистрирует для координат (правильны ли латы/длинные)? Что он регистрирует для карты (неужели это случайно)? – Anna