我正在使用google_maps_flutter包在应用程序中创建地图。我正在使用下面的功能
GoogleMap(
initialCameraPosition: CameraPosition(
target: _locationCoords, zoom: 12.0),
markers: Set.from(allMarkers),
onMapCreated: mapCreated,
zoomControlsEnabled: true,
zoomGesturesEnabled: true,
scrollGesturesEnabled: true,
compassEnabled: true,
)
问题出在缩放控件上。我可以看到出现了缩放控件,但我想更改缩放控件的位置以显示在右侧。是否可以更改缩放控件的位置。
答案 0 :(得分:1)
我没有找到任何解决方案,因此我创建了自定义缩放控件并使用地图控制器将其添加到地图上。
Positioned(
top: 100,
left: 5,
child: Card(
elevation: 2,
child: Container(
color: Color(0xFFFAFAFA),
width: 40,
height: 100,
child: Column(
children: <Widget>[
IconButton(
icon: Icon(Icons.add),
onPressed: () async {
var currentZoomLevel = await _controller.getZoomLevel();
currentZoomLevel = currentZoomLevel + 2;
_controller.animateCamera(
CameraUpdate.newCameraPosition(
CameraPosition(
target: locationCoords,
zoom: currentZoomLevel,
),
),
);
}),
SizedBox(height: 2),
IconButton(
icon: Icon(Icons.remove),
onPressed: () async {
var currentZoomLevel = await _controller.getZoomLevel();
currentZoomLevel = currentZoomLevel - 2;
if (currentZoomLevel < 0) currentZoomLevel = 0;
_controller.animateCamera(
CameraUpdate.newCameraPosition(
CameraPosition(
target: locationCoords,
zoom: currentZoomLevel,
),
),
);
}),
],
),
),
),
);