[flutter] 플러터 GridView에서 아이템을 다양한 방식으로 레이아웃하는 방법은?
방법 1: SliverGridDelegate 사용
GridView.builder(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
crossAxisSpacing: 10,
mainAxisSpacing: 10,
childAspectRatio: 1,
),
itemCount: items.length,
itemBuilder: (BuildContext context, int index) {
return YourItemWidget(items[index]);
},
)
방법 2: GridView.count 또는 GridView.extent 사용
GridView.count(
crossAxisCount: 2,
children: List.generate(100, (index) {
return YourItemWidget(index);
},
)
GridView.extent(
maxCrossAxisExtent: 200,
children: List.generate(100, (index) {
return YourItemWidget(index);
}),
)
방법 3: Custom Layout 사용
이 방법은 CustomMultiChildLayout을 사용하여 자신만의 레이아웃을 정의하는 데 사용됩니다. 이 방법은 특정한 레이아웃이나 위치를 원하는 경우에 유용합니다.
CustomMultiChildLayout(
delegate: YourCustomLayoutDelegate(),
children: List.generate(100, (index) {
return LayoutId(
id: YourLayoutId(index),
child: YourItemWidget(index),
);
}),
)
위의 각 방법은 다양한 상황에 적합하며, 여러분의 필요에 따라 선택하여 사용할 수 있습니다. 더 많은 정보를 위해 Flutter 공식 문서를 참조하세요.