[英]Can't access individual element from list in dart
我正在尝试创建一个简单的测验应用程序,其中包含一个问题作为Text
小部件和 4 个RaisedButton
小部件作为选项。 这就是我想要创建的:
这是我目前的代码:
@override
Widget build(BuildContext context) {
return MaterialApp(
home: SafeArea(
child: Scaffold(
appBar: AppBar(
title: Text(
"Flutter Demo Home Page"
),
),
body: Column(
children: [
Question(
questions[questionIndex]["questionText"]
),
Column(
children: getAnswerList()[questionIndex],
)
],
)
),
),
);
}
getAnswerList():
List<List<Answer>> getAnswerList() {
List<List<Answer>> answerList = [[]];
for (Map m in questions) {
List<String> answers = m["answers"];
List<Answer> temp = [];
for (String ans in answers) {
temp.add(
Answer(
answerQuestion,
ans
)
);
}
answerList.add(temp);
}
return answerList;
}
在此函数中,我创建了Answer
小部件的临时列表,然后将其添加到List<List<Answer>>
。
answerQuestion()
是一种设置更新的questionIndex
:
void answerQuestion() {
setState(() {
questionIndex++;
});
}
回答小部件:
import 'package:flutter/material.dart';
class Answer extends StatelessWidget {
final Function selectHandler;
final String answerText;
Answer(this.selectHandler, this.answerText);
@override
Widget build(BuildContext context) {
return Container(
width: double.infinity,
child: RaisedButton(
color: Colors.blue,
textColor: Colors.white,
child: Text(
answerText
),
onPressed: selectHandler,
),
);
}
}
该列应包含小部件列表,目前未在代码中完成将小部件列表分配给 children 属性
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.