Поиск места или адреса, как в Apple Maps iOS 10

#ios #mapkit #mklocalsearch

#iOS #mapkit #mklocalsearch

Вопрос:

Я пытаюсь воссоздать / получить тот же список поиска из MKLocalSearch, но безуспешно. Я перепробовал много вариантов с регионом, радиусом, дельтой. Но мои результаты отличаются от результатов приложения Apple Maps. Результат apple maps лучше для всех idea для поиска мест.

Я использовал приложение MapSearch, например, из документации Apple

и опции

 MKLocalSearchRequest *request = [[MKLocalSearchRequest alloc] init];
request.naturalLanguageQuery = searchString; 
request.region = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(self.userCoordinate.latitude, self.userCoordinate.longitude), 100, 100);
 

И это большие различия

введите описание изображения здесь
введите описание изображения здесь

Обновить:

Я заметил, что когда я задаю более точные запросы, результат тот же (если я указываю полное название места), но я понятия не имею, как найти больше результатов, используя одну букву, как в примере

Комментарии:

1. пытались увеличить свой регион? request.region = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(self.userCoordinate. широта, self.userCoordinate. долгота), 2000, 2000); например

2. @GIJOW, я пытался, но безуспешно

3. Я думаю, что результаты поиска на нужном изображении исходят из прикладной логики приложения Maps, которое знает ваши предыдущие запросы и многое другое. Я считаю, что вам нужно реализовать аналогичные функции, чтобы получить аналогичные результаты.

Ответ №1:

Возможно, вы захотите попробовать MKLocalSearchCompleter API. Вот ссылка на документацию. https://developer.apple.com/reference/mapkit/mklocalsearchcompleter