ユーザーが記入する登録フォームがあります。郵便番号を入力するだけでよく、プログラムで都市と州を推測できるようにして、それらを手動で記述する必要がないようにしたり、入力フィールドが少なくてすっきりしたインターフェイスにしたりしたいと思います。
どうすればいいですか?
これには CoreLocation フレームワークを使用できます。zipcode を文字列として取得し、フレームワークに最適な推測を行わせるか、ユーザーに推測を提示していずれかを選択させます。
import UIKit
import CoreLocation
let zipCode = "1234AB"
let geocoder = CLGeocoder()
geocoder.geocodeAddressString(zipCode) {
(placemarks, error) -> Void in
// Placemarks is an optional array of CLPlacemarks, first item in array is best guess of Address
if let placemark = placemarks?[0] {
print(placemark.addressDictionary)
}
}
CLGeoCoderおよびCLPlaceMarkを参照してください。