2015-02-03 23 views
5

Vì lý do nào đó, thị trường của tôi sẽ không thu phóng đến khu vực địa phương. Trong thực tế, nó không thay đổi zoom bất kể những gì tôi thay đổi. Tôi tải nó ở phần sai của mã, hay tôi đang thiếu cái gì khác? Bất kỳ trợ giúp được đánh giá cao.Zoom mặc định MapKit

Mã của tôi là:

@IBOutlet var here: MKMapView! 

var locationManager: CLLocationManager? 
var selectedItem: String? 
func locationManager 
    (manager: CLLocationManager!,didUpdateToLocation newLocation: CLLocation!, 
    fromLocation oldLocation: CLLocation!){ 
     manager.desiredAccuracy = kCLLocationAccuracyBest 


     var region = self.here.region as MKCoordinateRegion 

     self.here.setRegion(region, animated: true) 
     region.span.longitudeDelta = 0.0144927536 
     region.span.latitudeDelta = 0.0144927536 

} 

Trả lời

21

Tôi tin rằng bạn cần phải đặt lat và lâu TRƯỚC KHI bạn thiết lập khu vực. Hàm setRegion là chức năng phóng to ở một phần nhất định và mức thu phóng phụ thuộc vào khoảng thời gian của bạn. Dưới đây là ví dụ về bản đồ thu phóng.

let span = MKCoordinateSpanMake(0.075, 0.075) 
let region = MKCoordinateRegion(center: CLLocationCoordinate2D(latitude: lat, longitude: long), span: span) 
mapView.setRegion(region, animated: true) 
+0

Biến của bạn cho lat và dài là gì? –

+0

Chúng có thể là bất kỳ thứ gì thực sự. Cách dễ nhất tôi tìm thấy để có được dữ liệu lat và dài là sử dụng Google Maps. Chỉ cần google bất cứ điều gì bạn muốn và sau đó nhấp chuột phải vào vị trí trên bản đồ và chọn "What's Here?" và nó sẽ hiển thị lat và dài. – leerob