在我们的应用程序中,我想要一个类似下面代码的简单BottomSheet
表单。不幸的是,当我将它放入时,出现了错误。
在执行布局时抛出了以下断言:通常由TextField创建的InputDecorator不能具有无限制的宽度。这会在父小部件未提供有限宽度约束时发生。例如,如果InputDecorator包含在Row中,则其宽度必须受到限制。可以使用Expanded小部件或SizedBox来约束InputDecorator或其中包含的TextField的宽度。 'package:flutter/src/material/input_decorator.dart':失败的断言: 第881行第7个字符:'layoutConstraints.maxWidth < double.infinity'
我实现的代码:
void _settingModalBottomSheet(context){
showModalBottomSheet(
context: context,
elevation: 8.0,
builder: (BuildContext bc){
return Directionality(
textDirection: TextDirection.rtl,
child: ConstrainedBox(
constraints: BoxConstraints(
minHeight: 250.0
),
child: Container(
padding: EdgeInsets.fromLTRB(0.0,10.0,0.0,10.0),
child: new Wrap(
children: <Widget>[
Padding(
padding: const EdgeInsets.all(8.0),
child: Center(
child: Text(
'please fill this form',
style: TextStyle(
fontSize: 13.0,
),
),
),
),
Divider(),
Row(
mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Column(
children: <Widget>[
Text('item 1'),
Container(
child: TextField(),
)
],
),
Column(
children: <Widget>[
Text('item 2'),
Container(
child: TextField(),
)
],
),
],
),
],
),
),
),
);
}
);
}