gpt4 book ai didi

flutter - 在 Flutter 中使用 Google map 和容器堆叠 Widget

转载 作者:行者123 更新时间:2023-12-03 03:37:59 26 4
gpt4 key购买 nike

我有一个 Stack Widget,Stack 中的小部件是一个 Google Maps Map,上面有一个 Container。

当我滚动并到达容器时,它会忽略滚动手势。

return mapsService.loading
? Loading()
: Stack(
children: <Widget>[

Scaffold(
body: Container(
child: GoogleMap(
markers: Set<Marker>.of(mapsService.markers.values),
mapType: MapType.normal,
initialCameraPosition: mapsService.cameraPosition,
onMapCreated: (GoogleMapController controller) {
mapsService.controller.complete(controller);
},
),
),
floatingActionButtonLocation:
FloatingActionButtonLocation.centerDocked,
floatingActionButton: FloatingActionButton(
backgroundColor:
mapsService.dangerLevel[mapsService.currentDanger],
child: const Icon(Icons.warning),
onPressed: () {
print("FLOATINGACTIONBUTTON GEDRÜCKT!");
showDialog(
context: context,
builder: (BuildContext context) {
return ChangeNotifierProvider.value(
value: MapsService(), child: HelpCallAlertDialog());
});
},
),
bottomNavigationBar: BottomAppBar(
child: new Row(
mainAxisSize: MainAxisSize.max,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
IconButton(
icon: Icon(Icons.swap_horizontal_circle),
onPressed: () {
mapsService.changeDangerLevel();
},
),
FlatButton(
child: Text(mapsService.helpCallsCount.toString()),
onPressed: () async {
mapsService.getHelpCallSize();
},
),
],
),
),
),
HelpCallCard(),
],
);

HelpCallCard 类

return StreamBuilder<QuerySnapshot>(
stream: mapsService.helpCalls,
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> snapshot) {
if (!snapshot.hasData) return Container();

return Container(
height: 200,
color: Colors.green,
child: ListView(
scrollDirection: Axis.horizontal,
children:
snapshot.data.documents.map((DocumentSnapshot document) {
return IgnorePointer(
child: Container(
color: Colors.white,
child: Column(children: <Widget>[
Text(document.data["latitude"].toString()),
Text("Faszinierend!"),
],),
),
);
}).toList(),
),
);
});

我想要我的谷歌地图上的 HelpCallCards,我可以看到它们。但是当我的手指触摸它时,它会阻止 Google map 用户界面滚动

最佳答案

这个问题很老了,但我的回答可能对其他人有帮助。

我在使用 Mapbox 库而不是 Google map 时遇到了类似的问题。我的解决方法是手动定义容器高度,并确保我的前景容器没有占用屏幕上的所有空间。

return new Stack(
children: <Widget>[
new Container(
height: 1000, // This line solved the issue
child: FullMapPage(), // Mapbox
),
new Container(
alignment: Alignment.bottomLeft,
child: FirestoreSlideshow(), // My cards showing in front of the Map's
),
],
);

关于flutter - 在 Flutter 中使用 Google map 和容器堆叠 Widget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59435789/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com