Flutter 我怎样才能将我自己的风格添加到gmap[谷歌地图扑动插件]
我正在尝试将我自己的风格添加到GoogleMap小部件中,在我使用它生成与我想要的内容对应的json之后 我已经查看了google_map_Flatter插件,以查看可以覆盖以添加我的样式的任何属性,但没有找到任何属性Flutter 我怎样才能将我自己的风格添加到gmap[谷歌地图扑动插件],flutter,Flutter,我正在尝试将我自己的风格添加到GoogleMap小部件中,在我使用它生成与我想要的内容对应的json之后 我已经查看了google_map_Flatter插件,以查看可以覆盖以添加我的样式的任何属性,但没有找到任何属性 一些经验更丰富的用户可能已经知道从哪里开始,我将非常感谢您的帮助 复制JSON并以txt格式保存文件。 通过将此文件放置在资产文件夹中并在pubspec.yaml flutter: assets: - assets/map_style.txt 在GoogleM
一些经验更丰富的用户可能已经知道从哪里开始,我将非常感谢您的帮助 复制JSON并以
txt
格式保存文件。
通过将此文件放置在资产文件夹中并在pubspec.yaml
flutter:
assets:
- assets/map_style.txt
在GoogleMap小部件所在的State类中,添加以下导入语句:
import 'package:flutter/services.dart' show rootBundle;
并添加一个以字符串格式表示样式的字段:
String _mapStyle;
现在,我们可以将txt文件作为字符串加载,并将其馈送到_mapStyle字段。我们从State类的initState
方法中执行此操作:
@override
void initState() {
super.initState();
rootBundle.loadString('assets/map_style.txt').then((string) {
_mapStyle = string;
});
}
现在,当您初始化GoogleMap
小部件及其相应的GoogleMapController时,
如下设置样式:
GoogleMapController mapController;
GoogleMap(
onMapCreated: (GoogleMapController controller) {
mapController = controller;
mapController.setMapStyle(_mapStyle);
}
你完了!地图现在将加载您的自定义样式,您只需在需要时从map_style.txt中编辑样式即可。
方法2
GoogleMapController mapController;
void _onMapCreated(GoogleMapController controller) {
mapController = controller;
mapController.setMapStyle('[{"featureType": "all","stylers": [{ "color": "#C0C0C0" }]},{"featureType": "road.arterial","elementType": "geometry","stylers": [{ "color": "#CCFFFF" }]},{"featureType": "landscape","elementType": "labels","stylers": [{ "visibility": "off" }]}]');
}
);
我没有使用最新版本的插件(添加了对地图样式的支持)。现在可以了!谢谢