gpt4 book ai didi

flutter + 谷歌地图 : how to remove system markers?

转载 作者:行者123 更新时间:2023-12-05 09:28:52 25 4
gpt4 key购买 nike

我正在开发一个 flutter 应用程序,试图使用官方插件添加 Google map ,但是,有大量的系统标记我不知道如何删除。

标记来自 Google 自己的数据库,但我们真的不需要额外的信息,它们给我们的用户带来了问题,因为用户认为标记来 self 们自己的应用程序!大的用户体验问题。

我在 GoogleMap 类中找不到开关或类似的东西。

有什么想法吗?谢谢!

System markers

最佳答案

这可以通过将自定义谷歌地图样式应用到您的谷歌地图来实现。

创建自定义谷歌地图样式。使用 this工具生成 map_style.json 并将其保存在您的 Assets 文件夹中。 (确保它也在 pubspec.yaml 中被引用)。

  //this is the function to load custom map style json
void changeMapMode(GoogleMapController mapController) {
getJsonFile("assets/map_style.json")
.then((value) => setMapStyle(value, mapController));
}

//helper function
void setMapStyle(String mapStyle, GoogleMapController mapController) {
mapController.setMapStyle(mapStyle);
}

//helper function
Future<String> getJsonFile(String path) async {
ByteData byte = await rootBundle.load(path);
var list = byte.buffer.asUint8List(byte.offsetInBytes,byte.lengthInBytes);
return utf8.decode(list);
}

在您的谷歌地图小部件中像这样实现它:

     GoogleMap(
...
onMapCreated: (GoogleMapController c) {
yourMapController = c;
changeMapMode(yourMapController);
},
),

关于 flutter + 谷歌地图 : how to remove system markers?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70980162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com