kırmızı pimini varsayılan:Özel açıklama pimi değişiklikler yapılmadan app de özel açıklama pimini sahip uzun musluktan
- (MKAnnotationView *)viewForAnnotation:(id <MKAnnotation>)point type:(int)state
{
// Find the KMLPlacemark object that owns this point and get
// the view from it.
for (KMLPlacemark *placemark in _placemarks) {
if ([placemark point] == point)
{
UIButton *disclosureButton = [UIButton buttonWithType: UIButtonTypeDetailDisclosure];
[[placemark annotationView] setCanShowCallout: YES];
[[placemark annotationView] setRightCalloutAccessoryView:disclosureButton];
if (state == 0)
{
[[placemark annotationView] setImage:[UIImage imageNamed:@"ic_pin_tour.png"]];
}
else
{
[[placemark annotationView] setImage:[UIImage imageNamed:@"ic_pin_point.png"]];
}
return [placemark annotationView];
}
}
return nil;
}
: Ben özel bir görünüm dönmek ve bu şekilde İşareti'nin annotationView için setImage yapmak
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
return [kml viewForAnnotation:annotation type:state];
}
fakat eğer açıklama notuma uzunca dokunursam, görünümü varsayılan görünümüne (RedPin) değiştirir. Uzun muslukta hangi yöntemin çağrıldığını anlayamıyorum. UITapGestureRecognizer ile oynamayı denedim, ancak bulamadım. Eğer ek açıklama pinine dokunursam her şey iyi çalışıyor ve özel açıklama pinim görünümü kaybolmuyor. Bu ekran görüntüsünde ne demek istediğimi görebilirsiniz:
Peki neden ek açıklama iğnesi görünümü uzun dokunuşta değişir?
teşekkür ederiz. bana çok yardım etti. –
Çekicilik olarak çalıştı. Gerçek şu ki, MKPinAnnotation görünümü, istemediğiniz işlevselliğe sahip MKAnnotation görünümü olan bir alt sınıftır. – igraczech