首页 > 解决方案 > 如何更新地图视图类中的相机位置

问题描述

Mapview 是一个类,我将在其中显示用户车辆位置,我有一个场景,我必须显示该车辆的实时跟踪,以便我必须更新相机位置。我怎么能得到那个?

mapView.show(
    new MapOptions(
      mapViewType: MapViewType.normal,
      initialCameraPosition: new CameraPosition(new Location(lattitude,longitude), 17.0),
      showUserLocation: true,
      showCompassButton: true,
      showMyLocationButton: true,
      title:_vehicleNumbers[0].toString(),
    ),
    toolbarActions: [
      ToolbarAction('Close',1),
    ]   
  );

标签: dartflutter

解决方案


您需要以某种方式监视用户设备的位置。在 dart pub 上有一个不错的位置包... Flutter Location Package

这提供了位置更新的回调。然后您需要调用setCameraPositionmapView 对象上的函数来更新视图:

var location = new Location();
location.onLocationChanged.listen((Map<String,double> currentLocation) {
 var latitude = currentLocation["latitude"];
 var longitude = currentLocation["longitude"];
 mapView.setCameraPosition(new CameraPosition(new Location(lattitude,longitude), 17.0));
});

希望这可以帮助。


推荐阅读