我似乎无法滚动屏幕。我已经尝试了以下代码的一些变体,但无法使其正常工作。我也使用了效果也不佳的ListView进行了尝试。诚然,我很长时间没有尝试对ListView进行故障排除,因为我一直认为问题是由其他原因引起的。我查看了SO,并看到了有关此主题的一些问题,它们帮助我解决了一些问题,但是我似乎无法使其正常工作。我没有收到任何错误消息或任何内容,我的屏幕根本无法滚动。在下面,您将看到我的代码的总体布局。我在做什么错了?
class _TripPackagesState extends State<TripPackages> {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
Container(
child: Padding(
padding: EdgeInsets.symmetric(horizontal: 20.0),
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text(...),
GestureDetector(...),
],
),
),
),
Container(
margin: EdgeInsets.only(top: 1.0),
child: SingleChildScrollView(
child: StreamBuilder<QuerySnapshot>(
stream:
Firestore.instance.collection('trip_package').snapshots(),
builder: (BuildContext context,
AsyncSnapshot<QuerySnapshot> docSnapshot) {
if (!docSnapshot.hasData) return const Text('Loading...');
final int docCount = docSnapshot.data.documents.length;
return GridView.builder(
shrinkWrap: true,
scrollDirection: Axis.vertical,
itemCount: docCount,
itemBuilder: (_, int index) {
DocumentSnapshot document =
docSnapshot.data.documents[index];
return GestureDetector(
child: Container(
margin: EdgeInsets.all(3.0),
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
Row(...),
Row(...),
],
),
),
);
},
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(...),
);
},
),
),
),
],
),
);
}
}
答案 0 :(得分:1)
尝试在afunc()
中使用afunc()