Я не эксперт по MapKit
, но после прочтения документации мне кажется, что вы можете указать регион поиска, установив параметр region
в MKLocalSearchRequest
.Приведенный ниже код является примером в официальных документах .
. При указании строк поиска включайте регион карты, чтобы сузить результаты поиска до указанной географической области.
let request = MKLocalSearchRequest()
request.naturalLanguageQuery = "coffee"
// Set the region to an associated map view's region
request.region = myMapView.region
myMapView.region
- это видимая область в вашем MKMapView
.Так что, если вы получаете локальные результаты, это, вероятно, потому, что ваша карта увеличена в этой области.
Но если вы показываете результаты за пределами видимой области на карте, то это выглядит как bad UX , потому что пользователь ожидает результатов в области, которая видна ему.Проверьте, что сделали текущие приложения карты.Они показывают результаты, которые сначала находятся в видимой области, а затем в других областях.Похоже, это связано с тем, что говорится в последней строке документации.
Указание региона не гарантирует, что все результаты будут находиться внутри региона.Это просто подсказка поисковой системе.