如何仅在 Swift LocationPicker 库中搜索学校
How to search only for schools in Swift LocationPicker Library
我正在为 ios swift 使用此 library "Location Picker"。
它基本上是在地图上搜索各种地方。
我可以限制只搜索学校吗?我只需要搜索学校
我正在使用 swift4 和最新的 xCode
非常感谢
IBAction 函数
@IBAction func pickASchool(_ sender: UIBarButtonItem) {
let locationPicker = LocationPickerViewController()
let longitude :CLLocationDegrees = -122.0312186
let latitude :CLLocationDegrees = 37.33233141
let location = CLLocation(latitude: latitude, longitude: longitude) //changed!!!
print(location)
CLGeocoder().reverseGeocodeLocation(location, completionHandler: {(placemarks, error) -> Void in
print(location)
if error != nil {
print("Reverse geocoder failed with error" + (error?.localizedDescription)!)
return
}
print("no error")
if (placemarks?.count)! > 0 {
print("in pm")
let pm = placemarks![0]
// you can optionally set initial location
let initialLocation = Location(name: "My home", location: location, placemark: pm)
locationPicker.location = initialLocation
locationPicker.searchBarPlaceholder = "Search places" // default: "Search or enter an address"
locationPicker.searchHistoryLabel = "Previously searched" // default: "Search History"
// optional region distance to be used for creation region when user selects place from search results
locationPicker.resultRegionDistance = 500 // default: 600
locationPicker.completion = { location in
// do some awesome stuff with location
}
self.navigationController?.pushViewController(locationPicker, animated: true)
print(pm.locality!)
}
else {
print("Problem with the data received from geocoder")
}
})
}
我得到的唯一解决方案是获取选定的位置。然后,检查名称 属性。如果名称由以下单词之一组成,则为学校。
- 学校
- 学院
- 大学
- 大学...
感谢@DharmeshKheni
我正在为 ios swift 使用此 library "Location Picker"。 它基本上是在地图上搜索各种地方。
我可以限制只搜索学校吗?我只需要搜索学校
我正在使用 swift4 和最新的 xCode
非常感谢
IBAction 函数
@IBAction func pickASchool(_ sender: UIBarButtonItem) {
let locationPicker = LocationPickerViewController()
let longitude :CLLocationDegrees = -122.0312186
let latitude :CLLocationDegrees = 37.33233141
let location = CLLocation(latitude: latitude, longitude: longitude) //changed!!!
print(location)
CLGeocoder().reverseGeocodeLocation(location, completionHandler: {(placemarks, error) -> Void in
print(location)
if error != nil {
print("Reverse geocoder failed with error" + (error?.localizedDescription)!)
return
}
print("no error")
if (placemarks?.count)! > 0 {
print("in pm")
let pm = placemarks![0]
// you can optionally set initial location
let initialLocation = Location(name: "My home", location: location, placemark: pm)
locationPicker.location = initialLocation
locationPicker.searchBarPlaceholder = "Search places" // default: "Search or enter an address"
locationPicker.searchHistoryLabel = "Previously searched" // default: "Search History"
// optional region distance to be used for creation region when user selects place from search results
locationPicker.resultRegionDistance = 500 // default: 600
locationPicker.completion = { location in
// do some awesome stuff with location
}
self.navigationController?.pushViewController(locationPicker, animated: true)
print(pm.locality!)
}
else {
print("Problem with the data received from geocoder")
}
})
}
我得到的唯一解决方案是获取选定的位置。然后,检查名称 属性。如果名称由以下单词之一组成,则为学校。 - 学校 - 学院 - 大学 - 大学...
感谢@DharmeshKheni