MKMapView'dan tüm ek açıklamaların nasıl alınacağı konusunda herhangi bir doğrudan yöntem veya öneri var mı?Tüm ek açıklama görünümlerini MKMapView'dan alabilir miyim
Thnak Eğer Madan Mohan
MKMapView'dan tüm ek açıklamaların nasıl alınacağı konusunda herhangi bir doğrudan yöntem veya öneri var mı?Tüm ek açıklama görünümlerini MKMapView'dan alabilir miyim
Thnak Eğer Madan Mohan
Bunu annotations
özelliğini kullanarak haritanın ek açıklamaları erişebilirler. Şu anda haritada görünmeyen ek açıklamaların, onlarla ilişkilendirilmiş hiçbir ek görünüme sahip olmadığından, tüm ek açıklamaların görünümlerinin alınması mümkün olmayabilir, ancak isteğe bağlı ek açıklama için -viewForAnnotation:
yöntemini kullanarak bir görünüm elde etmeye çalışabilirsiniz.
Yani burada tüm haritanın ek açıklamalar yineleme ve görüşlerini erişmeye çalıştığınızda nasıl: Bu MKAnnotationViews bir YENİ takım yaratacağız
for (id<MKAnnotation> annotation in mapView.annotations){
MKAnnotationView* anView = [mapView viewForAnnotation: annotation];
if (anView){
// Process annotation view
...
}
}
hızlı 3.
func mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView) {
let selectedAnnotation = view.annotation
for annotation in mapView.annotations {
let viewI = mapView.view(for: annotation)
if !(viewI?.annotation is MKUserLocation){
if annotation.isEqual(selectedAnnotation) {
viewI?.image = UIImage(named: "focus.png")
showLifeEventView(anotation: view) //did select a point on Map.
}else{
viewI?.image = UIImage(named: "point.png")
}
}
}
}
Bu awsome kardeşti. . zamanımı kurtardı. . –
yılında - döndürmez haritanızdaki mevcut olanlar. –
^Hayır, yeni bir açıklama eklemez. Orijinal çözüm doğrudur. – n13
Aneil, 'MKMapView' yönteminin viewForAnnotation'ını (ki bu da doğru bir şekilde Vladimir'in örneğinde çalışan) 'MKMapViewDelegate' yöntemi ile eşleştirdiğinizi sanıyorum. MapView: viewForAnnotation: '(ek açıklamaları oluşturur, ancak asla doğrudan aramazsınız). – Rob