首页 > 解决方案 > 使用 MKLocalSearch/MapKit 查找附近的餐馆?

问题描述

我正在使用 MKLocalSearch 使用 Apple 地图显示附近的位置,但找不到过滤特定类型地点的方法(在我的情况下为餐厅/酒吧/餐馆)。有没有办法像 Apple Maps App 显示带有图标的餐厅一样过滤结果?我目前正在过滤掉空字幕并搜索附近的字幕,但这还不够具体。MKLocalSearch 的代码:

extension LocationService: MKLocalSearchCompleterDelegate {

    func completerDidUpdateResults(_ completer: MKLocalSearchCompleter) {
        self.searchResults = completer.results.filter({ $0.subtitle != "Search Nearby" && $0.subtitle != "" })
        self.status = completer.results.isEmpty ? .noResults : .result
    }

    func completer(_ completer: MKLocalSearchCompleter, didFailWithError error: Error) {
        self.status = .error(error.localizedDescription)
    }
}

标签: swiftmapkit

解决方案


您正在考虑搜索中的错误位置。您需要在进行搜索pointOfInterestFilter 之前设置搜索请求。


推荐阅读