我想知道如何在Flutter-Mapbox插件的标记中使用他自己的图标?
没有默认标记图标(没有提供的图标-没有标记), 而且有关如何使用自定义图片的文档也不够。
添加符号(标记)如下:
mapController.addSymbol(
SymbolOptions(
geometry:LatLng(0.0, 0.0), // location is 0.0 on purpose for this example
iconImage: "pin"
)
);
IconImage
是一个字符串,是一个字段,其中应该包含有关图标的数据(显然),但是给定的example repository并未阐明所需的参数(URL,路径等)。 )。
提供资产的路径无效(与其他小部件不同)。在示例中,他们为IconImage字段提供了值airport-15
,并且在运行该应用程序时,它确实可以工作,但是我似乎找不到资源的位置(它不在@drawables或我的资产文件夹中,或项目中的其他任何地方)
答案 0 :(得分:0)
您必须使用MapBox Studio
创建自定义样式。
customize basic template
my_sym
并添加新创建的数据源my_sym
两次。 (第一个将关闭选项菜单,第二个将打开具有符号属性的新菜单icon
标签并选择新图标。您还可以上传自己的svg图标。styleString
属性。有关更多信息,请按照此处的步骤 https://docs.mapbox.com/help/tutorials/add-points-pt-1/
答案 1 :(得分:0)
从0.0.5版开始,可以为标记加载自定义图标图像。想法是将图标图像添加到资产文件夹(例如:assets/symbols/custom-icon.png
)。如果您将此图像指定为pubspec.yaml中的资产,并将iconImage
中的SymbolOptions
设置为此路径,它将自动加载。
关于airport-15
,这是该插件的Android实现提供的图标。它是Mapbox中使用的Maki图标的一部分。由于这些图标是Android实现的一部分,因此您不会在示例应用程序中找到Flutter资产或Android资源。