Как добавить полилинию в нижней половине вида карты iOS 7
Пожалуйста, смотрите ниже изображение:
Как видите, я добавил mkpolyline
к моему mkmapview
но поскольку маршрут слишком велик, то часть маршрута переместилась за другие подпредставления.
Я хочу внести изменения, чтобы во всех случаях положения ломаной линии находились в нижней половине вида карты (под uitable
это показывает пошаговые инструкции). Является ли это возможным?
1 ответ
Вам необходимо уменьшить масштаб карты, чтобы маршрут отображался под текстовыми представлениями маршрута. Есть 2 способа сделать это вообще:
- Определить новый
MKCoordinateRegion
(или жеMKMapRect
), что является границей вашего маршрута с дополнительным отступом сверху - Изменить
MKMapView
кадр таким образом, что он находится под видом текста маршрута и поддерживаетregion
который соответствует маршруту
Вариант 2 проще, но имеет другой визуальный эффект. Вариант 1 требует, чтобы вы дополняли область отображения, сохраняя область отображения маршрута.
Для варианта 1 используйте тот факт, что вы уже масштабировали карту до маршрута и управляете visibleMapRect
, Пытаться:
MKMapRect visibleMapRect = map.visibleMapRect;
visibleMapRect.origin.y = visibleMapRect.size.height;
visibleMapRect.size.height *= 2;
map.visibleMapRect = visibleMapRect;