2013-01-04 5 views
5

la mia domanda può sembrare un po 'complicata ma lasciatemi chiarire. sto usando mkmapview, in questo voglio mostrare la posizione attuale dell'utente con punto blu e cerchio, ma questo non è esattamente quello che volevo. Mentre sto facendo un'applicazione per iPhone, Sincroci sono nuovo per mappare l'integrazione diventando difficile per me fare lo stesso.IF chiunque mi può fornire un link per la sua demo o può spiegarmi come mostrare la posizione dell'utente con il punto blu con il cerchio sulla mappa quindi sarebbe di grande aiuto per me. Grazie in anticipoCome mostrare il pin blu con punto (cerchio) in MKMapView in IPhone

+1

sua una funzione predefinita di MKMapView, impostare la vostra proprietà showuserLocation MapView su true e ci si va ... –

risposta

3

Questa è una delle proprietà della classe MKMapView. Il valore predefinito è No, quindi basta impostarlo su SÌ nel codice.

Nota: se aggiungi ViewView sul tuo ViewController nello Storyboard, guarda l'ispettore Attributi, per impostazione predefinita le altre annotazioni sono selezionate (Edifici, Punti di interesse) su Eccezione di MapView. Mi ci è voluto un po 'per trovare questo, mi sembra di giocare a nascondino, non so perché sia ​​così importante lasciare questo non controllato.

self.mapView.showsUserLocation = YES; 

Come thexande accennato, per swift3 si dovrà impostare a true:

self.mapView.showsUserLocation = true; 
+1

Imposta questo a true per Swift 3. – thexande

+0

@thexande sì per Swift 3 è necessario impostare a true. –

+0

Puoi anche impostarlo tramite lo storyboard –

3

Aggiungi questo alla parte superiore del metodo viewForAnnotation:

se ([isKindOfClass annotazione: [classe MKUserLocation]]) ritorno nulli;

L'annotazione di posizione utente speciale è di tipo MKUserLocation e restituisce nil in tal caso indica alla vista mappa di disegnare la vista predefinita per esso che è il punto blu. e vai nella proprietà MKMapview e controlla la posizione dell'utente dello show ....

2

per SWIFT 3

if (annotation.isKind(of: MKUserLocation.self)){ 
     return nil 
    } 

questo vi permetterà di mostrare punto blu come user location per swift 3.

Metti questo co de a l'annotazione func MapView viewFor

1

Risposta del @Ohmy è corretto, ma nel mio programma il caso era diverso:

Da iOS10 è necessario aggiungere NSLocationWhenInUseUsageDescription o NSLocationAlwaysUsageDescription chiave nella vostra applicazione Info.plist base alle proprie esigenze.

+0

Questo non funziona per me! :( – nirav