Как добавить полилинию в нижней половине вида карты iOS 7

Пожалуйста, смотрите ниже изображение:

Как видите, я добавил mkpolyline к моему mkmapview но поскольку маршрут слишком велик, то часть маршрута переместилась за другие подпредставления.

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

1 ответ

Решение

Вам необходимо уменьшить масштаб карты, чтобы маршрут отображался под текстовыми представлениями маршрута. Есть 2 способа сделать это вообще:

  1. Определить новый MKCoordinateRegion (или же MKMapRect), что является границей вашего маршрута с дополнительным отступом сверху
  2. Изменить MKMapView кадр таким образом, что он находится под видом текста маршрута и поддерживает region который соответствует маршруту

Вариант 2 проще, но имеет другой визуальный эффект. Вариант 1 требует, чтобы вы дополняли область отображения, сохраняя область отображения маршрута.

Для варианта 1 используйте тот факт, что вы уже масштабировали карту до маршрута и управляете visibleMapRect, Пытаться:

MKMapRect visibleMapRect = map.visibleMapRect;
visibleMapRect.origin.y = visibleMapRect.size.height;
visibleMapRect.size.height *= 2;
map.visibleMapRect = visibleMapRect;
Другие вопросы по тегам