Xamarin.Forms.Maps iOS填充

时间:2018-11-26 21:30:19

标签: ios iphone xamarin xamarin.forms

我无法为自己的问题找到解决方案。我想在iOS(自定义渲染器)上设置Xamarin表单地图(Mapkit / MKMapView)的填充。

对于Android,可以使用NativeMap.SetPadding(10,200,10,10)在自定义渲染器中进行设置,但我找不到在iOS中实现此功能的方法。

我要解决的问题是地图上的指南针出现在地图(iOS)的右上角,并且由于我在地图顶部确实有自己的控件,因此无法使用指南针。

在android上,填充设置将指南针向下推到我的控件下方,从而解决了问题。

对于在iOS上解决该问题的任何建议,我将不胜感激

1 个答案:

答案 0 :(得分:0)

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);