如何快速复制Snapchat Map?

时间:2020-04-05 12:19:31

标签: swift mapkit coordinates

最近我一直在做一个小项目。我想快速复制snapchat map程序。基本上,我想在地图上显示一个引脚,该引脚指示程序在我的设备中的安装位置。我已经快速编写了一些代码,但我对此并不满意。任何建议将不胜感激。

import Foundation
import CoreLocation
import MapKit

class DiscoverViewController : UIViewController, CLLocationManagerDelegate {

@IBOutlet weak var map: MKMapView!
let locationManager: CLLocationManager! = nil

override func viewDidLoad()
{
    super.viewDidLoad()

//for use in background
    self.locationManager.requestAlwaysAuthorization()

//for use in foreground
    self.locationManager.requestWhenInUseAuthorization()

    if (CLLocationManager.locationServicesEnabled())
    {
        locationManager.delegate = self
        locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
        locationManager.requestAlwaysAuthorization()
        locationManager.startUpdatingLocation()
    }
}

func locationManager(manager: CLLocationManager!, didUpdateLocations locations: 
 [AnyObject]!) { var locValue:CLLocationCoordinate2D = manager.location.coordinate

    println("locations = \(localValue.latitude) \(localValue.longitude)")


    let center = CLLocationCoordinate2D(latitude: locValue.latitude, longitude: 
 locValue.longitude)
    let region = MKCoordinateRegion(center: center, span: MKCoordinateSpan(latitudeDelta: 
 0.01, longitudeDelta: 0.01))

    self.map.setRegion(region, animated: true)
    var currentLocation = CLLocation()

    var locationLat = currentLocation.coordinate.latitude
    var locationLong = currentLocation.coordinate.longitude
    println("locations = \(locationLat) \(locationLong) \ 
(currentLocation.coordinate.latitude) \(currentLocation.coordinate.longitude)")
}
func locationManager(manager: CLLocationManager!, didFailWithError error: NSError!) { 
println("Errore while updating location" + error.localizedDescription)

}

func locationManagerDidPauseLocationUpdates(_ manager: CLLocationManager) {
    <#code#>
}
}

0 个答案:

没有答案