반응형
질문
이렇게 코드가 있지만 동적인 수의 자식을 표시하기 위해 정수 배열을 반복하도록하고 싶습니다:
return Container(
child: Column(
children: <Widget>[
Center(
child: Text(text[0].toString(),
textAlign: TextAlign.center),
),
Center(
child: Text(text[1].toString(),
textAlign: TextAlign.center),
),
],
),
)
text
변수는 여기서 문자열로 변환 된 정수의 목록입니다. 배열을 반복하고 'children'을 표시하기 위한 함수를 추가해보았지만 유형 오류가 발생했습니다. Dart와 Flutter에 익숙하지 않기 때문에 어떻게해야할지 모르겠습니다.
답변
이렇게 해볼 수 있습니다:
@override
Widget build(BuildContext context) {
List<int> text = [1,2,3,4];
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Container(
child: Column(
children: [
for ( var i in text ) Text(i.toString())
],
),
),
);
이것은 dart를 2.3 버전으로 업데이트 함에 따라 추가된 것입니다. 몇 가지 주요 변경 사항에 대해 이 기사에서 읽을 수 있습니다.
dart 2.3 이전에 제공된 다른 방법은 다음과 같습니다:
@override
Widget build(BuildContext context) {
List<int> text = [1,2,3,4];
return Scaffold(
appBar: AppBar(
title: Text(widget.title),
),
body: Container(
child: Column(
children: List.generate(text.length,(index){
return Text(text[index].toString());
}),
),
),
);
반응형
댓글