반응형
질문
플러터를 처음 사용해봐서 아래 코드에 무슨 문제가 있는지 알려주실 수 있는 분이 계신가요
class GamePage extends StatelessWidget {
int _row;
int _column;
GamePage(this._row,this._column);
@override
Widget build(BuildContext context) {
return new Material(
color: Colors.deepPurpleAccent,
child:new Expanded(
child:new GridView.count(crossAxisCount: _column,children: new List.generate(_row*_column, (index) {
return new Center(
child: new CellWidget()
);
}),) )
);
}
}
에러 스크린샷 첨부.
답변
당신은 Flex
조상을 가지고 있지 않습니다.
Expanded 위젯은 Row, Column 또는 Flex의 자손이어야 하며, Expanded 위젯으로부터 해당 Row, Column 또는 Flex에 이르는 경로에는 Stateless 위젯 또는 Stateful 위젯만 포함되어야 합니다(다른 종류의 위젯인 RenderObjectWidgets와 같은 것은 포함되어서는 안 됩니다).
당신의 경우에 Expanded
가 필요한지 확신하지 못합니다. 하지만 이를 제거하거나 Column
으로 감싸면 문제가 해결될 것입니다.
반응형
댓글