Flutter 中 GoogleMapController 的含义是什么?

问题描述

@H_404_0@我是新手,所以这个问题听起来很愚蠢,但我真的想要这个意思。

  1. onMapCreated 之后的代码发生了什么?
  2. 传递给控制器​​的值是什么?
  3. controller 和 _controller 有什么区别?
class MapSample extends StatefulWidget {
  @override
  State<MapSample> createState() => MapSampleState();
}
class MapSampleState extends State<MapSample> {
  Completer<GoogleMapController> _controller = Completer();
...

@override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: GoogleMap(
        mapType: MapType.hybrid,initialCameraPosition: _kGooglePlex,onMapCreated: (controller) {
          _controller.complete(controller);
        },),);
  }

解决方法

1: onMapCreated 是一个函数,它接受一个 mapController 和一个名为 options 的可选参数。该选项用于更改地图的 UI,例如旋转手势、缩放手势、地图类型等。 mapController 的功能大部分类似于 TextEditingController,因为它用于管理相机功能、缩放和动画等。

2:如上所述mapController带参数来改变地图的功能,如改变位置、缩放等

3:controller 和_controller 的区别在于_controller 对声明它的类是私有的,不能在它之外访问。私有变量和公共变量的概念相同。