我无法为自己的问题找到解决方案。我想在iOS(自定义渲染器)上设置Xamarin表单地图(Mapkit / MKMapView)的填充。
对于Android,可以使用NativeMap.SetPadding(10,200,10,10)在自定义渲染器中进行设置,但我找不到在iOS中实现此功能的方法。
我要解决的问题是地图上的指南针出现在地图(iOS)的右上角,并且由于我在地图顶部确实有自己的控件,因此无法使用指南针。
在android上,填充设置将指南针向下推到我的控件下方,从而解决了问题。
对于在iOS上解决该问题的任何建议,我将不胜感激
答案 0 :(得分:0)
您可以创建自己的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
您可以使用GMSMapView.padding属性在地图边缘周围添加填充。地图将继续填充整个容器,但是文本和控件的位置,地图手势以及相机的移动将表现得好像放置在较小的空间中。这导致以下更改:
myGMSMapViewInstace.Padding = new UIEdgeInsets(100.0f, 100.0f, 100.0f, 100.0f);