gpt4 book ai didi

flutter - 动态地将小部件添加到列的子项中

转载 作者:IT王子 更新时间:2023-10-29 06:53:09 24 4
gpt4 key购买 nike

我正在创建一个测验应用程序,需要根据特定问题的选项数量动态显示 mcq 选项。

例如:

enter image description here

现在按钮的代码在这里:

    final quizOptions = Container(
width: MediaQuery.of(context).size.width,
child: Center(
child: Column(
children: <Widget>[
SimpleRoundButton(
backgroundColor: Color.fromRGBO(58, 66, 86, 1.0),
buttonText: Text(questions[questionNum].options[0],
style: TextStyle(
color: Colors.white
),
),
textColor: Colors.white,
onPressed: (){},
),
SimpleRoundButton(
backgroundColor: Color.fromRGBO(58, 66, 86, 1.0),
buttonText: Text(questions[questionNum].options[1],
style: TextStyle(
color: Colors.white
),
),
textColor: Colors.white,
onPressed: (){},
),
],
),
),
);

如您所见,我能做的是“修复”2 个按钮。有没有一种方法可以根据特定问题的选项数量动态添加按钮?

我有一个名为 questions 的列表,它是一个问题列表(这是一个类):

class Question {
String title;
List options;
String imagePath;

Question(
{this.title, this.options, this.imagePath,});
}


//Example:
Question(
title: "How fast does the drone go ?",
options: ['80km/h', '90km/h', '100km/h'],
imagePath: "assets/images/drones1.jpg",
)

最佳答案

您应该遍历您的选项以创建 SimpleRoundButton

...................................
child: Column(
children: questions[questionNum].options.map<Widget>(
(option) => SimpleRoundButton(
backgroundColor: Color.fromRGBO(58, 66, 86, 1.0),
buttonText: Text(option,
style: TextStyle(
color: Colors.white
),
),
textColor: Colors.white,
onPressed: (){},
),
).toList(),
.........................

关于flutter - 动态地将小部件添加到列的子项中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56335114/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com