Flutter Google Maps:如何在运行后更改地图类型?

tsy*_*tsy 2 google-maps dart flutter

我试图在按如下所示的按钮时从 更改normalsatellite,但出现 setMapType 不存在的错误。

mapController.setMapType(MapType.satellite);
Run Code Online (Sandbox Code Playgroud)

有人知道我做错了什么吗?

Jam*_*mes 11

  1. 创建一个 MapType 变量:

    MapType _currentMapType = MapType.normal;
    
    Run Code Online (Sandbox Code Playgroud)
  2. 调用 Google 地图小部件时引用此变量:

    googleMap = new GoogleMap(
        mapType: _currentMapType,  
        //etc
    
    Run Code Online (Sandbox Code Playgroud)
  3. 创建一个浮动按钮小部件来切换地图类型:

    floatingActionButton: FloatingActionButton(           
                              child: Icon(Icons.layers),
                              onPressed: ()=> 
                              {
                                 setState(() {
                                    _currentMapType = (_currentMapType == MapType.normal) ? MapType.satellite : MapType.normal;  
                                 });
                              },
                              heroTag: null,
                            ),
    
    Run Code Online (Sandbox Code Playgroud)