我看了GridView
小部件,但它是
可滚动的二维小部件数组
我希望网格在水平和垂直方向上都占据父级所允许的最大区域。或者,如果有一些小部件在扩展的同时允许我们指定行和列。我一定能想到几个用例。
无论如何,这就是我目前的情况,
class NumberButtonsGrid extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
Expanded(child: Row(children: <Widget>[
Expanded(child: Text("1"), flex: 1),
Expanded(child: Text("2"), flex: 1),
Expanded(child: Text("3"), flex: 1),
],), flex: 1),
Expanded(child: Row(children: <Widget>[
Expanded(child: Text("4"), flex: 1),
Expanded(child: Text("5"), flex: 1),
Expanded(child: Text("6"), flex: 1),
],), flex: 1),
Expanded(child: Row(children: <Widget>[
Expanded(child: Text("7"), flex: 1),
Expanded(child: Text("8"), flex: 1),
Expanded(child: Text("9"), flex: 1),
],), flex: 1),
Expanded(child: Row(children: <Widget>[
Expanded(child: Text("."), flex: 1),
Expanded(child: Text("0"), flex: 1),
Expanded(child: Text("00"), flex: 1),
],), flex: 1),
],
);
}
}
有没有更好的方法可以做到这一点。对我来说似乎一团糟。如果我必须在单个单元格中填充不同的小部件怎么办?那将是一场灾难。感觉就像使用HTML
在<div>
中创建表格。
答案 0 :(得分:0)
如果要禁用GridView / ListView的滚动,请添加:
physics: NeverScrollableScrollPhysics()
GridView / ListView具有自动扩展行为,因此如果您的窗口小部件设置为Axis.vertical
,并且您需要将其设置为MediaQuery.of(context).size.width * number
,则需要设置父窗口小部件的 width 。
您可以使用@Getter
@Setter
@ToString
class GetUserInfoDTO {
private String id;
private String name;
}
@Getter
@Setter
@ToString
class PostUserInfoDTO {
private String name;
private Integer age;
private String address;
private String gender;
private String email;
private Date joinDate;
}
根据屏幕尺寸设置GridView的宽度。