Kullanıcının konumunu hem CLLocationManager'dan hem de MKMapView'den alırım. Haritanın merkez koordinatını ayarlamak için hangisini kullanmalıyım? Ayrıca, simülatördeki iki yöntem de cevaplarında farklılık göstermektedir. MKMapview'ın didUpdateUserLocation, cupertino'da Apple ofisini döndürürken, CLLocationManager doğru konumu döndürür.CLLocationManager MKMapView'a göre didUpdateToLocation didUpdateUserLocation
cevap
ben kesin çünkü Ayrıca daha fazla seçenek, startMonitoringSignificantChanges kullanabilirsiniz verir 1 sonsuz döngüye Dr üzerinde merkezleme ... vb, CLLocationManager
kullanmak
ben MapKit konumunu kullanmak istiyorsunuz .
Harita rutinleri harita ile çalışırken kullanılmak üzere tasarlanmıştır; CoreLocation rutinleri, haritasından bağımsız olarak kullanılmak üzere tasarlanmıştır. MapKit, haritayı etkileyen konum değişikliklerini bildirecektir (showUserLocation YES ise veya izleme modu MKUserTrackingModeFollowWithHeading ise didUpdateUserLocation çağrılır). Uygulama arka planda olduğunda CoreLocation'ın hizmetleri değişiklikleri bildirme yeteneğine sahiptir.
Sonuç olarak, yaptığınız işe uygun seçeneği kullanmalısınız. Uygulamamda, her iki hizmeti de kullanıyorum: Harita görüntülendiğinde MapKit ve harita görüntülenmediğinde veya uygulama arka planda olduğunda CoreLocation.
Ayrıca, iOS 5'in piyasaya sürüldüğünden beri, simülatör bir dizi konum seçeneğini desteklemektedir; simülatör uygulaması için Hata Ayıklama menüsüne bakın, ayrıca bu seçeneklerden bazılarını https://stackoverflow.com/a/8175468/338468'da açıkladım.
Anakara Çin'de konumlarla uğraşıyorsanız, MapKit konumunu öneriyorum. Bu sizin için (ulusal güvenlik nedenleriyle yasa tarafından eklenmiş olan) GPS ofsetinin hesaplanmasını ele alır. Bu konu hakkında daha fazla bilgi için: https://en.wikipedia.org/wiki/Restrictions_on_geographic_data_in_China
- 1. iPhone Geliştirme - CLLocationManager ve MapKit
- 2. CLLocationManager bir NSObject öğesinde temsilci çağırmıyor
- 3. MKMapView ve CLLocationManager
- 4. CLLocationManager güncelleştirmelerinden Gözlemlenebilir oluşturma
- 5. CLLocationManager - Gerçek zamanlı hızı hesaplayın iPhone
- 6. CLLocationManager güncellemelerini zorlama - yardımcı mı yoksa zarar mı veriyor?
- 7. CLLocationManager kCLErrorDomain Kodları? Aşağıdaki hatayı alıyorum iBeacon ve CoreLocation kullanma
- 8. Güncel coğrafi noktaları yalnızca bir kez iphone'da nasıl edinebilirim?
- 9. LINQ'a göre kültüre göre nasıl sipariş verebilirim?
- 10. Gruplara göre gruplara göre ayırma sayısı
- 11. Haritaları şuna göre haritalara göre sıralama
- 12. Nesnelerin nesnesine göre nesne özniteliğine göre ara
- 13. locationManager Swift 3'te kullanımdan kaldırıldı mı?
- 14. MapKit varsayılan büyütme
- 15. Kullanıcı taşındığında kullanıcı konumundan ek açıklamaya nasıl hesaplanır
- 16. SQLAlchemy: İki alana göre gruplandırma ve tarihe göre filtreleme
- 17. Hazırda bekleyen ölçütler grubu, tarihe göre tarihine göre
- 18. Facebook graph API: kullanıcılara göre basit arama ismine göre
- 19. Ülkeye göre ülkeye göre özel satış siparişi yönetimi
- 20. Verileri aylara göre filtrelenmiş iki tarih değerine göre filtrele
- 21. Tarihine Göre SQLite Siparişi
- 22. Mutlak değere göre sırala
- 23. Döküm şamandıraı OCaml'e göre
- 24. Ayrıntılar tarihe göre listeleniyor
- 25. MDX - grup boyutuna göre
- 26. Bölmeyi sıfıra göre değiştir
- 27. Metriklere göre filtreler
- 28. Satırları DateDiff'e göre ekle
- 29. Konuya göre PyPI'yi arama
- 30. Dosyaları tarihe göre sırala
Ancak mavi nokta 1 sonsuz döngüde dr ... CLLocationManager'ın konumun nerede olduğunu düşünmediği yere gelemiyorum ... – user605957
aygıtta yazmıyor. Bu sadece bir simülatördür, hata ayıklama için sahte bir nokta yapabilir ve harita merkezi ile aynı noktaya ayarlayabilirsiniz, tam olarak aynı davranışta olmayacak, ama yakın. –
Teşekkürler. SO alt satırı, ben CLLocationManager kullanırsam, gitmek için iyi olmalı ve gerçek cihazda mavi nokta didUpdateToLocation doğru yerde alınan yeri ile çakışacak? – user605957