2015-06-25 9 views
5

Nie mogę dowiedzieć się, jak uzyskać mapę, aby powiększyć lokalizację użytkownika z viewDidLoad. Próbowałem ustawić region, a to nie zadziałało. To jest kod, który mam, jakieś wskazówki?Powiększenie położenia użytkownika - Swift

@IBOutlet słabe var mapView: MKMapView! var MapViewLocationManager: CLLocationManager! = CLLocationManager() var currentLocation: PFGeoPoint! = PFGeoPoint()

override func viewDidLoad() { 
    super.viewDidLoad() 
    self.mapView.showsUserLocation = true 
    mapView.delegate = self 
    MapViewLocationManager.delegate = self 
    mapView.setUserTrackingMode(MKUserTrackingMode.Follow, animated: true) 
} 

Mam spojrzał w górę odpowiedź na to pytanie, ale nie znalazłem odpowiedzi w Swift czy to faktycznie działa. Dzięki!!

Odpowiedz

13

chciałbym spróbować czegoś takiego:

let latitude:CLLocationDegrees = //insert latitutde 

    let longitude:CLLocationDegrees = //insert longitude 

    let latDelta:CLLocationDegrees = 0.05 

    let lonDelta:CLLocationDegrees = 0.05 

    let span = MKCoordinateSpanMake(latDelta, lonDelta) 

    let location = CLLocationCoordinate2DMake(latitude, longitude) 

    let region = MKCoordinateRegionMake(location, span) 

    mapView.setRegion(region, animated: false) 

Widziałem mówiłeś wypróbowane ustawienie regionu. Może spróbuj to zrobić w ten sposób.

+0

Dziękuję bardzo! Domyślam się, że tam utknąłem, jak zdefiniowałbym szerokość i długość geograficzną lokalizacji użytkownika? – Caitlin

+0

@Caitlin nie ma za co! Jestem na urządzeniu mobilnym, więc nie mogę wytłumaczyć, ale sprawdź to: http://youtu.be/pSjbMwR2A2U i to: http://stackoverflow.com/a/25698536, jeśli wideo nie pomaga. – rb612

+0

Bardzo doceniane. – Caitlin

5

W większości aplikacji zaimplementowano przycisk "aktualna lokalizacja". Prosty sposób na zrobienie tego jest następujący:

@IBAction func myLocationButtonTapped(_ sender: Any) { 

    mapView.showsUserLocation = true 
    mapView.setUserTrackingMode(.follow, animated: true) 

} 

Po przesunięciu lub powiększeniu mapy śledzenie zostanie zatrzymane. Więc to dla mnie wystarczająco dobre.

6

Musisz spróbować. Umożliwia powiększanie mapy.

let span = MKCoordinateSpanMake(0.050, 0.050) let region = MKCoordinateRegion(center: CLLocationCoordinate2D(latitude: 23.0225, longitude: 72.5714), span: span) mapView.setRegion(region, animated: true)

+0

Jeśli chcesz powiększyć więcej, po prostu użyj mniejszych liczb w spamie: "let spam = MKCoordinateSpanMake (0.001, 0.001)" – Pavlos

Powiązane problemy