Obraz zamiast domyślny pin w ramach iPhone MapKit?

głosy
6

Czy to możliwe, aby nasz własny obraz zamiast domyślnego pin w MapKit mapy na iPhone?

Pracuję nad aplikacji, które pokazują lokalizacje znajomych podobnie jak Google Latitude i trzeba pokazać obraz przyjaciół w ich lokalizacji.

Jest to możliwe przy użyciu JavaScript Map Google, ale chcę wiedzieć, czy ktoś może dać jakiś przykładowy kod mapie MapKit oparte.

Utwórz 29/09/2009 o 15:15
źródło użytkownik
W innych językach...                            


3 odpowiedzi

głosy
14

Tak to mozliwe. Za to u musiał użyć MKAnnotationView zamiast MKPinAnnotationView. i nie korzystają z mienia annotation.animatesDrop.

Oto przykładowy kod można użyć w viewForAnnotation,

    annotation = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"try"];
    annotation.canShowCallout = YES;

    annotation.image = [UIImage imageNamed:@"image.png"];


    return annotation;
Odpowiedział 29/09/2009 o 15:20
źródło użytkownik

głosy
2

Można również ustawić ramkę obrazu. Do tego w powyższym kodzie musimy uczynić to proste zmiany.

UIImage *pinImage = [UIImage imageNamed:@"image.png"];

UIImageView *imageView = [[[UIImageView alloc] initWithImage:pinImage] autorelease];

       imageView.frame = CGRectMake(-20, 0, 40, 30);

[annotation addSubview:imageView];

I musimy komentować linię

// annotation.image = [UIImage imageNamed:@"image.png"];
Odpowiedział 29/11/2010 o 07:38
źródło użytkownik

głosy
0

Za pomocą własności rozpiętości można łatwo powiększyć do listy wymagają

MKCoordinateSpan rozpiętość;

MKCoordinateRegion region;


mapView.scrollEnabled=YES;
span.latitudeDelta = 100.0;//more value you set your zoom level will increase
span.longitudeDelta =100.0;//more value you set your zoom level will increase
mapView.showsUserLocation=YES;
region.span = span;


region.center = from.coordinate;
  [mapView setRegion:region animated:YES];
 [mapView regionThatFits:region];
[mapView addAnnotation:from];
Odpowiedział 25/07/2013 o 08:39
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more