有没有办法在Xamarin Forms Maps中更改引脚的图像。我想让pin成为一个自定义图像,如果它必须本地完成,有人可以给我一个简单的例子。谢谢。
答案 0 :(得分:2)
对于后来的人来说,这在Xamarin Forms中得到了很好的支持。
本质上,您需要在PCL或共享代码中创建自定义地图类,该类继承自Xamarin Forms Map,然后在每个平台中创建自定义渲染器。项目。
每个平台的自定义渲染器都会有所不同,处理渲染图标的细节以及单击该特定平台的引脚时显示的任何弹出信息。您没有义务为所有平台创建自定义渲染器,因为您不会显示任何正常地图。
现在Custom Renderers | Customizing a Map section of the Xamarin Forms Developers Guide中已经记录了这一切。该文档介绍了如何为Android,iOS和UWP创建自定义渲染器,并详细解释了所需的代码。它有很多,所以我不会在这里重现它。还有accompanying sample solution here。
值得注意的一点是,如果您尝试在自己的项目中重现该代码,您还需要在ProjectName \ Droid \ Resources目录中的各种可绘制文件夹中添加图像,还需要在两个axml文件中添加图像。布局目录。
答案 1 :(得分:1)
显然这已被锁定,您必须查看自定义渲染器才能实现您的需求。
以下链接对此进行了讨论: -
http://forums.xamarin.com/discussion/17916/customization-of-xamarin-forms-maps-pins
,特别引用以下链接中的某个项目,有人从资产文件夹中实现了自定义图像引脚: -
https://github.com/paulpatarinski/ShouldIWashMyCar/blob/master/Android/Renderers/MapViewRenderer.cs
我还没有尝试过这个,但是在寻找自定义地图渲染时,这可能是一个很好的起点。
答案 2 :(得分:1)
此项目可能对您有所帮助。 raechten/BindableMapTest
来自说明:
用于将集合绑定到Xamarin Forms Maps引脚的小样本 (有效直到直接绑定到Pins属性将被支持 由Xamarin Forms直接表示。
包括自定义和可点击的引脚。
它有Android和iOS实现。