2016-12-23 3 views
0

Я пытаюсь создать наложение MKCircle на карте, однако я бы хотел, чтобы размер круга на экране оставался постоянным, когда пользователь увеличивает масштаб.MapKit MKCircle Изменение радиуса на уровне масштабирования

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

Я работаю в Swift 3. Есть ли какой-то конкретный метод MapKit, который я должен использовать для этого? Я знаю, что есть возможность использовать изображение круга в качестве аннотации, однако я хочу динамически изменять цвет круга.

Другими словами, я хочу MKCircle масштабировать так же MKPolyline весы, как вы увеличивать и уменьшать масштаб

ответ

0

Так как пользователь увеличивает масштаб, радиус становится все меньше, и как пользователь отъезжает, радиус становится больше

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

Итак, если вы не хотите, чтобы это произошло, не используйте MKOverlay. Например, вы можете сделать обычный вид, который отображает круг и класть его перед видом карты. Или вы можете использовать аннотацию вместо этого (MKAnnotation); изображение аннотации не изменяет размер при увеличении карты.

+0

А теперь я вижу, что мой вопрос был запутан. Я думаю, я не хочу, чтобы размер размера круга изменялся при масштабировании. В основном, когда пользователь увеличивает масштаб, я хочу, чтобы размер круга не изменялся относительно экрана. Я попробую ваше предложение с дополнительным представлением –

+0

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

+1

Несомненно, это проблема. Если вы использовали обычный вид, вам придется отслеживать панорамирование пользователя и перемещать представление. Вот почему я предложил аннотацию в качестве альтернативного подхода. Но главная цель моего ответа заключалась в том, чтобы предложить, почему наложение - это не способ сделать это, потому что то, что вы описываете, - это не то, что накладывается _is_. – matt

Смежные вопросы