【发布时间】:2020-08-20 15:19:24
【问题描述】:
我有 2 页。 A 和 B 页。我从 A 页面导航到 B 页面。在 B 页我有 DraggableScrollableSheet。当我通过滚动扩展到maxChildSize 时,它滚动得很好。但是当我尝试回滚到initialChildSize 和minChildSize 时,这个B 页面正在关闭并导航回A 页面。这是我的代码:
Widget _detailWidget() {
return DraggableScrollableSheet(
maxChildSize: 1,
initialChildSize: .64,
minChildSize: .64,
builder: (context, scrollController) {
return Container(
padding: AppTheme.padding.copyWith(bottom: 0),
decoration: BoxDecoration(
borderRadius: BorderRadius.only(
topLeft: Radius.circular(40),
topRight: Radius.circular(40),
),
color: Colors.white),
child: SingleChildScrollView(
controller: scrollController,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.max,
children: <Widget>[
SizedBox(height: 5),
Container(
alignment: Alignment.center,
child: Container(
width: 50,
height: 5,
decoration: BoxDecoration(
color: LightColor.iconColor,
borderRadius: BorderRadius.all(Radius.circular(10))),
),
),
SizedBox(height: 10),
Container(
child: Row(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
TitleText(text: "Title Looooong", fontSize: 25),
Column(
crossAxisAlignment: CrossAxisAlignment.end,
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
TitleText(
text: "\$ ",
fontSize: 18,
color: LightColor.red,
),
TitleText(
text: "124",
fontSize: 25,
),
],
),
Row(
children: <Widget>[
Icon(Icons.star,
color: LightColor.yellowColor, size: 17),
Icon(Icons.star,
color: LightColor.yellowColor, size: 17),
Icon(Icons.star,
color: LightColor.yellowColor, size: 17),
Icon(Icons.star,
color: LightColor.yellowColor, size: 17),
Icon(Icons.star_border, size: 17),
],
),
],
),
],
),
),
SizedBox(
height: 20,
),
_availableSize(),
SizedBox(
height: 20,
),
_availableColor(),
SizedBox(
height: 20,
),
_description(),
],
),
),
);
},
);
}
@override
Widget build(BuildContext context) {
return Scaffold(
floatingActionButton: _flotingButton(),
body: SafeArea(
child: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
colors: [
Color(0xfffbfbfb),
Color(0xfff7f7f7),
],
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
)),
child: Stack(
children: <Widget>[
_productImage(),
_appBar(),
_detailWidget(),
],
),
),
),
);
}
}```
here `_productImage()` and `_appbar()` are just widgets. what might be problem
【问题讨论】: