Bagaimana cara menampilkan banyak info dari MKAnnotationView?

Saya suka menerapkan sth. seperti ini. Saya memiliki dua anotasi dengan info, tetapi MKMapView hanya mengizinkan satu untuk dipilih secara bersamaan.

[mapView selectAnnotation:self.firstAnnotation animated:FALSE];
[mapView selectAnnotation:self.secondAnnotation animated:FALSE];

Saat saya memilih anotasi lain, anotasi pertama otomatis dibatalkan.

Namun pada gambar di bawah ini berhasil diterapkan. Jadi bagaimana hal ini dapat dilakukan? http://oi52.tinypic.com/14t3t09.jpg


person baladurasa    schedule 22.07.2011    source sumber


Jawaban (1)


Lihat juga "Beberapa info anotasi ditampilkan di MKMapView": Beberapa info anotasi ditampilkan di MKMapView

Tampaknya kerangka kerja ini tidak mendukung banyak pilihan, jadi Anda harus menerapkan info khusus untuk perilaku ini. Jawaban atas pertanyaan terkait menyarankan agar info Anda menjadi bagian dari tampilan anotasi sehingga Anda dapat mengelola sendiri pilihannya. Secara pribadi saya suka menerapkan info sebagai anotasi terpisah - Saya punya contoh proyek dengan info khusus di sini:

https://github.com/jacobjennings/JJMapCallout

yang merupakan solusi saya untuk:

MKAnnotationView - Kunci tampilan anotasi khusus untuk disematkan tentang pembaruan lokasi

Dalam proyek ini, saya meneruskan metode delegasi MKMapView

- (void)mapView:(MKMapView *)aMapView didSelectAnnotationView:(MKAnnotationView *)aView
- (void)mapView:(MKMapView *)aMapView didDeselectAnnotationView:(MKAnnotationView *)aView

ke anotasi masing-masing. Hal ini memungkinkan saya menerapkan perilaku info yang diharapkan. Namun, Anda dapat mengabaikan pesan didDeselectAnnotationView agar info tetap terlihat.

Untuk mengetahui apakah pengguna mengetuk peta untuk menghapus anotasi (tidak mengetuk pin), periksa nilai mapView.selectedAnnotations dalam metode didDeselectAnnotationView Anda, dan jika kosong, Anda akan tahu untuk menghapus info Anda.

person Jacob Jennings    schedule 12.09.2011
comment
baca solusi lain yang Anda tautkan dan perhatikan Anda mengubah tautan megaupload di sana, Anda harus mengubah tautan ini juga! Kerja bagus... - person whyoz; 11.08.2012