我想在我的 ios map 中创建一个自定义信息窗口,我该如何实现这一点。我正在使用 xamarin forms google map 插件来创建 map 。
请帮助我
我想要一个像这样的自定义信息窗口
最佳答案
我通过使用 Xamarin 实现了这一目标。形式。谷歌地图插件,我正在为信息窗口设计实现一个自定义渲染器。
在 Xaml 中
<maps:CustomMapiOS x:Name="customMap" MapType="Street" Grid.RowSpan="3"
IsShowingUser="True" >
</maps:CustomMapiOS>
在可移植项目中创建自定义类
public class CustomMapiOS : Map
{
public CustomMapiOS()
{
}
}
在 iOS 项目中创建 CustomRendererMap
public class CustomRendererMap : MapRenderer
{
private MapView mapView;
UIView customPinView;
protected override void OnElementChanged(ElementChangedEventArgs<View> e)
{
base.OnElementChanged(e);
if (e.OldElement != null)
{
CustomMapiOS formsMap = (CustomMapiOS)e.NewElement;
}
if (e.NewElement != null)
{
CustomMapiOS formsMap = (CustomMapiOS)e.NewElement;
MapView nativeMap = Control as MapView;
mapView = nativeMap;
nativeMap.MarkerInfoWindow = new GMSInfoFor(markerInfoWindow);
}
}
UIView markerInfoWindow(UIView view, Marker marker)
{
//infowindow design
}
}
关于google-maps - 如何在xamarin表单谷歌地图中创建自定义信息窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52355065/