Самый простой способ добавить пин-код на карту в iOS - PullRequest
2 голосов
/ 15 октября 2011

Предположим, у меня есть код ниже, чтобы добавить карту к представлению, каков самый простой способ добавить булавку к местоположению. Может ли кто-нибудь посоветовать фрагмент кода добавить в мой код?

Спасибо

- (void)viewDidLoad
{
    MKMapView *map = [[MKMapView alloc] initWithFrame:CGRectMake(2, 2, 300, 300)];
    MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } };

    region.center.latitude = 22.278355;
    region.center.longitude = 114.181713;

    region.span.longitudeDelta = 0.01f;
    region.span.latitudeDelta = 0.01f;  

    [map setRegion:region animated:YES];
    [map regionThatFits:region];

    [self.view addSubview:map];
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
}

ОБНОВЛЕНИЕ:

xxx.h

#import <UIKit/UIKit.h>
#import <MapKit/MapKit.h>


@interface ShopDetail : UIViewController <MKMapViewDelegate> {

}

@end

xxx.m

- (void)viewDidLoad
{
    MKMapView *map = [[MKMapView alloc] initWithFrame:CGRectMake(2, 2, 300, 300)];
    MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } };

    region.center.latitude = 22.278355; //40.105085;
    region.center.longitude = 114.181713; //-83.005237;

    region.span.longitudeDelta = 0.01f;
    region.span.latitudeDelta = 0.01f;  

    [map setRegion:region animated:YES];
    [map regionThatFits:region];

    map.delegate = self;

    [self.view addSubview:map];

    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
}

- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation {
    MKPinAnnotationView *pav = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:nil];

    NSLog(@"called viewForAnnotation");

    pav.pinColor = MKPinAnnotationColorGreen;
    return pav;
}

* NSLog (@ "named viewForAnnotation"); не выполняется.

1 Ответ

0 голосов
/ 15 октября 2011
  1. Установить делегата карты.
  2. Добавьте на карту аннотацию для места, где вы хотите разместить булавку.
  3. Возвращает экземпляр MKPinAnnotationView, когда карта вызывает метод делегата -mapView:viewForAnnotation: для аннотации, добавленной на шаге 2.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...