Domanda

Ecco la situazione:Io sono la visualizzazione di immagini su una mappa utilizzando le annotazioni personalizzate.Tutto funziona bene, ma vorrei migliorare visivamente da il ridimensionamento del AnnotationView in modo che si restringe come la mappa è ridotta.Io voglio fare questo perché, ovviamente, più le annotazioni di riempire lo schermo e devono essere ridotti in modo che non si sovrappongano troppo e l'utente può vedere ulteriori annotazioni.(Naturalmente, vorrei ingrandire AnnotationViews quando la mappa è ingrandita di nuovo).

Ho raggiunto rimuovendo tutte le annotazioni da una mappa e l'aggiunta di loro di nuovo, ogni volta che regionDidChangeAnimated è chiamato.Tuttavia, queste immagini vengono caricate da internet, in modo da scaricare le immagini di nuovo (dato che le annotazioni siano state rimosse) non sembra avere senso.

Spero di aver spiegato bene la situazione, e spero di contribuire a farlo in futuro.

Grazie in anticipo.

P. S.Sto sviluppando con iOS 4.0

È stato utile?

Soluzione

Poiché si utilizza iOS 4.0 vorrei suggerire l'utilizzo di una classe che è conforme alla MKOverlay protocollo invece di MKAnnotationView.Sovrapposizioni di zoom con la mappa e la scala in modo appropriato.Probabilmente si può usare 1 overlay per gestire tutte le vostre annotazioni.Controllare il HazardMap demo Apple al WWDC 2010 colloqui sul http://developer.apple.com

In alternativa, si potrebbe usare qualcosa come il k vicini algoritmo di gruppo annotazioni per ogni scala di zoom.Tuttavia, che può essere un po ' lento se si dispone di un sacco di annotazioni.L'ho provato una volta con diverse migliaia di annotazioni, e non come il calo di prestazioni sostenute.Penso < 1000 annotazioni potrebbe avere prestazioni decenti con questo metodo però.

Altri suggerimenti

Sembra che sei già sulla strada giusta e che l'unico vero problema è il download delle immagini.C'è qualche particolare motivo, non è possibile cache di loro mediante la scrittura per la cartella documenti (o la directory della cache, se si desidera loro di andare via quando l'applicazione si chiude) quando si ricevono e di guardare prima di visualizzarli?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top