我正在开发一个使用 Google 地图插件的 Flutter 应用程序。我已经实现了带有标记的地图,每个标记在点击时都应该显示
InfoWindow
。但是,当我点击标记时,InfoWindow
不会出现。
这是我的代码
for (var student in _students) {
_markers.add(
Marker(
markerId: MarkerId(student.id),
position: LatLng(student.gps.latitude, student.gps.longitude),
infoWindow: InfoWindow(
title: student.nombre,
snippet: student.gps.idRfid,
),
onTap: () {
_moveCamera(LatLng(student.gps.latitude, student.gps.longitude), zoomIn: true);
context.read<MapStateCubit>().showParadas(student);
lastUpdateTime = student.gps.lastUpdateTime;
},
icon: markerBusIcon!,
),
);
}
标记被添加到
Set<Marker>
,并传递到 GoogleMap
小部件:
GoogleMap(
mapType: MapType.normal,
onMapCreated: _onMapCreated,
initialCameraPosition: CameraPosition(
target: _initialPosition,
zoom: 12,
),
markers: _markers.toSet(),
myLocationEnabled: true,
myLocationButtonEnabled: true,
zoomControlsEnabled: true,
)
到目前为止我尝试过的:
infoWindow
是否定义了每个标记的标题和片段。onTap
回调有效(相机正确移动)。尽管进行了这些检查,
InfoWindow
并未出现。
[注意:这不是一个实际的答案,因为我目前遇到了同样的问题,我只是想确认您不是唯一的问题并添加一些额外的信息,希望找到解决方案。不幸的是,我无法添加简单的评论,因为我没有足够的代表,如果您觉得不合适,请随时删除我的“答案”]
我遇到了完全相同的问题,直到几天前,代码都可以正常工作,现在 InfoWindows 不会出现在 iOS 版本的应用程序中,而它们在 Android 版本中仍然可以正常工作,是吗?你适合吗?我已经检查了您的所有检查加上: