目录
一 列表布局ListView
二 GridView网格布局组件
名称 | 类型 | 说明 |
scrollDirection | Axis | Axis.horizontal水平列表 Axis.vertical垂直列表 |
padding | EdgeInsetsGeometry | 内边距 |
resolve | bool | 组件反向排序 |
children | List | 列表元 |
动态列表实现
void main(List args) {runApp(MaterialApp(home: Scaffold(appBar: AppBar(title: Text("title")),body: MyApp(),),));
}
class MyApp extends StatelessWidget {List list = [];MyApp({super.key}) {print(listData);for (var i = 0; i < 20; i++) {list.add("我是第${i}条数据");}}@overrideWidget build(BuildContext context) {return ListView.builder(itemCount: list.length,itemBuilder: (context, index){return ListTile(title: Text("${list[index]}"),);},);}
}
当让可以滚动的元素使用矩阵方式排列的时 候。此时我们可以用网格列表组件GridView实现布局。 GridView创建网格列表主要有下面三种方式
1、可以通过GridView.count 实现网格布局 2、可以通过GridView.extent 实现网格布局 3、通过GridView.builder实现动态网格布局名称 | 类型 | 说明 |
scrollDirection | Axis | 滚动方法 |
padding | EdgeInsetsGeometry | 内边距 |
resolve | bool | 组件反向排序 |
crossAxisSpacing | double | 水平子Widget之间间距 |
mainAxisSpacing | double | 垂直子Widget之间间 距 |
crossAxisCount | int | 用在GridView.count 一行的Widget数量 |
maxCrossAxisExtent | double | 用在GridView.extent 横轴子元素的最大长度 |
childAspectRatio | double | 子Widget宽高比例 |
children | [ ] | |
gridDelegate | SliverGridDelegateWithFixedCrossAxisCount SliverGridDelegateWithMaxCrossAxisExtent | 控制布局主要用在 GridView.builder里面 |