প্রথম আমদানি করলোকেশন এবং ম্যাপকিট লাইব্রেরি:
import MapKit
import CoreLocation
CLLocationManagerDelegate থেকে আমাদের ক্লাসে উত্তরাধিকারী হন
class ViewController: UIViewController, CLLocationManagerDelegate
একটি লোকেশন ম্যানেজার ভেরিয়েবল তৈরি করুন, এটি আপনার অবস্থানের ডেটা হবে
var locationManager = CLLocationManager()
অবস্থানের তথ্য পেতে একটি ফাংশন তৈরি করুন, এই সঠিক বাক্য গঠনটি নির্দিষ্ট করে নির্দিষ্ট করুন:
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
আপনার ফাংশনে ব্যবহারকারীদের বর্তমান অবস্থানের জন্য একটি ধ্রুবক তৈরি করুন
let userLocation:CLLocation = locations[0] as CLLocation // note that locations is same as the one in the function declaration
অবস্থান আপডেট করা বন্ধ করুন, এটি আপনার ডিভাইসটি চলার সময় ক্রমাগত আপনার অবস্থানকে কেন্দ্র করে উইন্ডো পরিবর্তন করতে বাধা দেয় (আপনি অন্যথায় এটি কাজ করতে চাইলে আপনি এটি বাদ দিতে পারেন)
manager.stopUpdatingLocation()
আপনি সুনির্দিষ্টভাবে সংজ্ঞায়িত করেছেন ব্যবহারকারী লোট্যাটিন থেকে ব্যবহারকারীদের সমন্বয় পেতে:
let coordinations = CLLocationCoordinate2D(latitude: userLocation.coordinate.latitude,longitude: userLocation.coordinate.longitude)
আপনি নিজের মানচিত্রটি কীভাবে জুম করতে চান তা নির্ধারণ করুন:
let span = MKCoordinateSpanMake(0.2,0.2)
অঞ্চল পেতে এই দুটি একত্রিত করুন:
let region = MKCoordinateRegion(center: coordinations, span: span)//this basically tells your map where to look and where from what distance
এখন অঞ্চলটি সেট করুন এবং আপনি এটি অ্যানিমেশন সহ সেখানে যেতে চান কিনা তা চয়ন করুন
mapView.setRegion(region, animated: true)
আপনার ফাংশন বন্ধ করুন
}
আপনার বোতাম বা অন্য কোনও উপায় থেকে আপনি লোকেশনম্যানেজারডেলিগেটকে নিজের মধ্যে সেট করতে চান
এখন অবস্থানটি দেখানোর অনুমতি দিন
নির্ভুলতা মনোনীত
locationManager.desiredAccuracy = kCLLocationAccuracyBest
অনুমোদন করা:
locationManager.requestWhenInUseAuthorization()
অবস্থান পরিষেবাটি অনুমোদন করতে আপনাকে এই দুটি লাইন আপনার প্লিস্টে যুক্ত করতে হবে
অবস্থান পান:
locationManager.startUpdatingLocation()
এটি ব্যবহারকারীকে দেখান:
mapView.showsUserLocation = true
এটি আমার সম্পূর্ণ কোড:
import UIKit
import MapKit
import CoreLocation
class ViewController: UIViewController, CLLocationManagerDelegate {
@IBOutlet weak var mapView: MKMapView!
var locationManager = CLLocationManager()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func locateMe(sender: UIBarButtonItem) {
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyBest
locationManager.requestWhenInUseAuthorization()
locationManager.startUpdatingLocation()
mapView.showsUserLocation = true
}
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let userLocation:CLLocation = locations[0] as CLLocation
manager.stopUpdatingLocation()
let coordinations = CLLocationCoordinate2D(latitude: userLocation.coordinate.latitude,longitude: userLocation.coordinate.longitude)
let span = MKCoordinateSpanMake(0.2,0.2)
let region = MKCoordinateRegion(center: coordinations, span: span)
mapView.setRegion(region, animated: true)
}
}
Import MapKit
+ +CoreLocation
যোগ + +CLLocationManagerDelegate
বর্গ সংজ্ঞা।