मै मैपकिट के साथ काम कर रहा हूं। मैं मानचित्र को उपयोगकर्ता के स्थान और एनोटेटेड पॉइंट को दिखाने के लिए ज़ूम करना चाहता हूं, बस उपयोगकर्ता के वर्तमान स्थान पर ज़ूम करने की बजाय।मानचित्र को उपयोगकर्ता स्थान और एनोटेशन (स्विफ्ट 2) पर ज़ूम करना
वर्तमान में मेरे पास है:
let annotation = MKPointAnnotation()
annotation.coordinate = CLLocationCoordinate2DMake(mapLat, mapLon)
annotation.title = mapTitle
self.map.addAnnotation(annotation)
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let userLoction: CLLocation = locations[0]
let latitude = userLoction.coordinate.latitude
let longitude = userLoction.coordinate.longitude
let latDelta: CLLocationDegrees = 0.05
let lonDelta: CLLocationDegrees = 0.05
let span:MKCoordinateSpan = MKCoordinateSpanMake(latDelta, lonDelta)
let location: CLLocationCoordinate2D = CLLocationCoordinate2DMake(latitude, longitude)
let region: MKCoordinateRegion = MKCoordinateRegionMake(location, span)
self.map.setRegion(region, animated: true)
self.map.showsUserLocation = true
}
यह सिर्फ उपयोगकर्ता के स्थान को ज़ूम और यह स्थान पर बंद कर दिया जाता है। जब मैं स्क्रॉल करने का प्रयास करता हूं, तो यह बस उपयोगकर्ता के स्थान पर वापस कूदता है। मैं क्या गलत कर रहा हूं? मैं उपयोगकर्ता को वर्तमान स्थान पर वापस कूदने के बिना मानचित्र को ज़ूम या स्थानांतरित करने की अनुमति कैसे दूं?
मैं एनोटेशन और उपयोगकर्ता के स्थान को उसी दृश्य पर दिखाने के लिए ज़ूम इन करने का प्रयास कर रहा हूं। यहां तक कि यदि एनोटेशन बहुत दूर है, तो भी मैं इसे उपयोगकर्ता और एनोटेशन दोनों को दिखाने के लिए ज़ूम करना चाहता हूं।
का प्रयोग करें आप requestLocation के साथ जाना है, तो आपको एक असफल फ़ंक्शन भी जोड़ना होगा: 'func locationManager (प्रबंधक: CLLocationManager, didFailWith त्रुटि त्रुटि: NSError) { // कुछ करें } ' – Dohab