Come si disabilita l'interazione dell'utente con un'intera mappa (MKMapView) in iOS? Voglio solo disabilitare lo zoom, toccare, ecc. E mostrare una mappa statica. [self.mapView setUserInteractionEnabled:NO]
non ha funzionato. Trovato soluzioni operative via Google o altre risposte qui su Stack (collegamento pls se trovi una risposta funzionante ..). Targeting per iOS 5. Ci dovrebbe essere un modo più semplice per farlo.Come disabilitare l'interazione dell'utente su MKMapView?
risposta
La chiave è quella di disabilitare zoom e volute, come ad esempio:
self.mapView.zoomEnabled = false;
self.mapView.scrollEnabled = false;
self.mapView.userInteractionEnabled = false;
Ok questa risposta ha funzionato per me, per la maggior parte. I rubinetti stanno ancora arrivando, ma ciò non infrange il mio caso d'uso e gli utenti non possono scorrere o zoom, quindi sono felice. Grazie! – sean
Usando questo, ero ancora in grado di usare i due movimenti di rotazione e inclinazione delle dita per spostare completamente il punto focale centrale fuori dalla vista, anche se era piuttosto noioso. – SandWyrm
Qual è il punto di disabilitare l'interazione dell'utente se devi ancora farlo nel codice ...? – Mgamerz
È possibile impostare la proprietà Enabled MKAnnotationView NO
Per disabilitare Zoom, è possibile impostare mapView.zoomEnabled = FALSE;
abilitato
Un valore booleano che indica se l'annotazione è abilitato.
@property (nonatomic, getter=isEnabled) BOOL enabled
Discussione
Il valore predefinito di questa proprietà è sì. Se il valore di questa proprietà è NO, la vista di annotazione ignora gli eventi di tocco e non può essere selezionata. Le sottoclassi possono anche visualizzare i contenuti delle annotazioni in modo diverso a seconda del valore di questa proprietà.
Non capisco come questo si applica per disabilitare l'interazione sull'intera mappa. Non voglio che l'utente sia in grado di interagire ovunque all'interno dell'intera mappa, in questo particolare caso d'uso. – sean
Che ne dici di questo piccolo trucco! è sufficiente posizionare UIView
sopra lo MKMapView
con tutti gli stessi dettagli del fotogramma. Si noti inoltre che l'backgroundColor
di questo punto di vista dovrebbe essere clearColor
farà in modo che il pulsante [legale] della visualizzazione mappa non sia selezionabile? Mela come questa? – DeyaEldeen
È possibile farlo in Interface Builder come questo:
- 1. UIPanGestureRecognizer su MKMapView?
- 2. come mostrare la posizione corrente su MKMapView
- 3. didAddAnnotationViews non funziona su MKMapView
- 4. MKMapView - setRegion: animato rende MKMapView non risponde su iOS7
- 5. Aggiorna MKAnnotationView su un MKMapView
- 6. Procedura: visualizzare MKOverlay su MKMapView
- 7. Come posso sapere quando l'evento regionChange su MKMapView è programmato o trascinato dall'utente di MKMapView?
- 8. Come creare un MKMapView?
- 9. Come disabilitare l'output su log4j.rootLogger?
- 10. Come disabilitare vsync su macOS
- 11. Pulsante posizione corrente su ios MKMapView
- 12. MKMapView mapTypes
- 13. Consolidare le annotazioni su un MKMapView ingrandito
- 14. Visualizzazione di MKRoute su MKMapView in iOS7
- 15. spostamento/aggiornamento di MKOverlay su MKMapView
- 16. Cambia immagine pin su MKMapView in Swift
- 17. Disabilitare l'autosuggestion su WebView?
- 18. Come cercare MKMapView con UISearchBar?
- 19. MKMapView, animateDrop?
- 20. Centro MKMapView non corretto
- 21. iOS - MKMapView - trascinabili NOTE
- 22. Come disabilitare l'ordinamento su jQuery.DataTables init?
- 23. Xamarin.Forms - Come disabilitare Tab su TabbedPage?
- 24. Come disabilitare l'evidenziazione su ListView in Xamarin.Forms
- 25. Come disabilitare la tastiera su un UITextView?
- 26. Come disabilitare cliccando su ListView in Android?
- 27. MKMapView Itinerario/Indicazioni
- 28. MKMapView Zoom e regione
- 29. Disegno MKMapView Overlay come Google Maps Indicazioni
- 30. Esperienza con rotazione MKMapView
FYI, ho provato questo e l'app è stata respinta per non essere interattiva. Non ho usato MKMapView, quindi non posso effettivamente rispondere alla tua domanda. –
@SteveMallory Non dovrebbe essere rifiutato per fare questo in un solo caso d'uso, penso. Altre app lo fanno. Dai un'occhiata a Foursquare: In un caso d'uso (Shop Detail View) la mappa è praticamente bloccata sul posto che ha senso dal momento che il contesto del contenuto è un singolo negozio. – sean
Dalla mia esperienza, non funziona se selezionato nel generatore di interfacce rimuovendo il segno di spunta su "Interazione utente abilitata" per la visualizzazione mappa. Tuttavia, impostarlo in base al codice ha funzionato per me. –