SORU
12 HAZİRAN 2010, CUMARTESİ


Nasıl bir MKMapView tüm Açıklamaları silmek için

Objective-c görüntülenen tüm açıklamalar yineleme olmadan bir harita üzerinde tüm açıklamaları silmek için basit bir yolu var mı?

CEVAP
12 HAZİRAN 2010, CUMARTESİ


Evet, burada nasıl

[mapView removeAnnotations:mapView.annotations]

Ancak önceki kod satırındaki tüm ek açıklamaları göster "" İĞNE kaldıracak harita, kullanıcı konumu pin de dahil olmak üzere "Mavi Pin". Tüm harita kaldırmak için ek açıklamalar ve kullanım yeri harita üzerinde pin tutun, iki vardır olası yolları yapmak için

Örnek 1, kullanım yeri vb korumak, tüm raptiyeleri Kaldır, Ekle kullanıcı geri pin konum, ama bu yaklaşım ile bir sorun var, kullanıcı konumu pin çıkarma nedeniyle harita üzerinde yanıp neden olacaktır pın kodunu daha sonra tekrar ekleme

- (void)removeAllPinsButUserLocation1 
{
    id userLocation = [mapView userLocation];
    [mapView removeAnnotations:[mapView annotations]];

    if ( userLocation != nil ) {
        [mapView addAnnotation:userLocation]; // will cause user location pin to blink
    }
}

Örnek 2, ben şahsen konumunu kullanıcı kaldırma önlemek için tercih pin ilk etapta,

- (void)removeAllPinsButUserLocation2
{
    id userLocation = [mapView userLocation];
    NSMutableArray *pins = [[NSMutableArray alloc] initWithArray:[mapView annotations]];
    if ( userLocation != nil ) {
        [pins removeObject:userLocation]; // avoid removing user location off the map
    }

    [mapView removeAnnotations:pins];
    [pins release];
    pins = nil;
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ASUS Campus Life

    ASUS Campus

    18 Mart 2013
  • Randall P Studios

    Randall P St

    27 AĞUSTOS 2009
  • UrAvgConsumer

    UrAvgConsume

    1 Ocak 2012