Giới thiệu
Bài viết này hướng dẫn cách tính toán khoảng cách giữa hai tọa độ địa lý (latitude/longitude) sử dụng framework CoreLocation trên iOS.
Các bước thực hiện
Bước 1: Tạo dự án mới
Mở Xcode → New Project → Single View Application → Đặt tên "FindDistance".
Bước 2: Thiết kế giao diện
Thêm hai nhãn (UILabel) lên Main.storyboard.

Bước 3: Kết nối IBOutlet
Tạo @IBOutlet cho nhãn hiển thị kết quả, đặt tên distanceLabel.
Bước 4: Import CoreLocation
Thêm import CoreLocation ở đầu file ViewController.swift.
Bước 5: Khai báo hai vị trí
Tạo hai đối tượng CLLocation đại diện cho hai điểm cần tính khoảng cách:
var firstLocation = CLLocation(latitude: 34.54545, longitude: 56.64646) var secondLocation = CLLocation(latitude: 59.326354, longitude: 18.072310)
Bước 6: Tính khoảng cách trong viewDidLoad
Sử dụng phương thức distance(from:) của CLLocation:
override func viewDidLoad() {
super.viewDidLoad()
let distanceInMeters = firstLocation.distance(from: secondLocation)
let distanceInKm = distanceInMeters / 1000.0
distanceLabel.text = String(format: "Khoảng cách: %.2f km", distanceInKm)
}
Giải thích
distance(from:)trả về khoảng cách tính bằng mét.- Chia cho 1000 để chuyển sang kilômét (km).
- Phương thức sử dụng công thức Haversine tính trên mặt cầu Trái Đất.
Bước 7: Chạy thử
Kết quả hiển thị khoảng cách giữa hai điểm:

Mở rộng
Để lấy vị trí thực tế của người dùng, hãy sử dụng CLLocationManager yêu cầu quyền truy cập vị trí (NSLocationWhenInUseUsageDescription trong Info.plist).