我正试图像这样映射我的手机屏幕。这一观点正在网络上展示。它的摄像机位置覆盖了所有的标记。但在手机上,我用的是谷歌地图。我不能在手机上看到同样的画面。
在移动设备上,视图如下所示。我的缩放级别是0。
这是我在颤振中的代码
cameraBounds = CameraTargetBounds(getBounds(bounds));
这是我的地图容器。
Container(
width: MediaQuery.of(context).size.width-50,
height: 400,
child: GoogleMap(
zoomControlsEnabled: true,
cameraTargetBounds: cameraBounds,
zoomGesturesEnabled: true,
mapToolbarEnabled: true,
gestureRecognizers: Set()..add(Factory<EagerGestureRecognizer>(() => EagerGestureRecognizer())),
mapType: MapType.normal,
tiltGesturesEnabled: true,
scrollGesturesEnabled: true,
indoorViewEnabled: true,
markers: this.myMarker(),
padding: EdgeInsets.all(20),
initialCameraPosition: _kGooglePlex,
minMaxZoomPreference: MinMaxZoomPreference(0,13),
onMapCreated: (GoogleMapController controller) {
mapController = controller;
_controller.complete(controller);
// moveCamera();
},
),
)
把记号笔绑起来。
getBounds(List<LatLng> list) {
//assert(list.isNotEmpty);
print('Post size :' +list.length.toString());
double x0, x1, y0, y1;
if(list.isEmpty){
return LatLngBounds(northeast: LatLng(0, 0), southwest: LatLng(0, 0));
}else{
for (LatLng latLng in list) {
if (x0 == null) {
x0 = x1 = latLng.latitude;
y0 = y1 = latLng.longitude;
} else {
if (latLng.latitude > x1) x1 = latLng.latitude;
if (latLng.latitude < x0) x0 = latLng.latitude;
if (latLng.longitude > y1) y1 = latLng.longitude;
if (latLng.longitude < y0) y0 = latLng.longitude;
}
}
return LatLngBounds(northeast: LatLng(x1, y1), southwest: LatLng(x0, y0));
}
}
enter code here
我已经试过使用动画摄影机或移动摄影机,但视图总是这样。如何在一个摄像头位置覆盖整个地图标记。请帮帮我。