Xamarin.Forms.Maps iOS Padding - PullRequest
       1

Xamarin.Forms.Maps iOS Padding

0 голосов
/ 27 ноября 2018

У меня проблемы с поиском решения моей проблемы.Я хочу установить отступ для карты форм Xamarin (Mapkit / MKMapView) на iOS (пользовательский рендерер).

Для Android его можно установить в пользовательском рендерере с помощью NativeMap.SetPadding (10,200,10,10).), но я не могу найти способ сделать это в iOS.

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

На андроиде установка отступов опускает компас под мои элементы управления и решает проблему.

Буду признателен за любые предложения о том, как решить эту проблему для iOS

1 Ответ

0 голосов
/ 27 ноября 2018

MapKit.MKMapView

Вы можете создать свою собственную кнопку MKCompassButton и изменить ее позицию X / Y (с помощью своего кадра) на карте.

var compass = MKCompassButton.FromMapView(mkMapViewInstance);
compass.CompassVisibility = MKFeatureVisibility.Visible;
compass.Frame = new CGRect( new CGPoint(25,25), compass.Frame.Size);

re: https://developer.apple.com/documentation/mapkit/mkcompassbutton?language=objc

Google.Maps.MapView (iOS)

Вы можете добавить отступы по краям карты, используя свойство GMSMapView.padding.Карта будет продолжать заполнять весь контейнер, но расположение текста и элементов управления, жесты карты и движения камеры будут вести себя так, как если бы она была размещена в меньшем пространстве.Это приводит к следующим изменениям:

myGMSMapViewInstace.Padding = new UIEdgeInsets(100.0f, 100.0f, 100.0f, 100.0f);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...