任何人都可以在颤振中向我解释这段代码吗?

萨夫温

我是颤振的新手,你能解释一下颤振中的这些代码吗?

              children: [
                Question(_questions.elementAt(_questionIndex)['questionText']),
                ...(_questions.elementAt(_questionIndex)['answers']as List<String>).map((answer) {
                 return Answer(answerQuestion, answer);
                }).toList(),

答案是 dart 文件,它返回一个容器(特定的提升按钮)。顺便说一句,这是此代码中使用的一些术语的定义:

int _questionIndex = 0;
  List _questions = [
    {
      'questionText': 'What is your favorite animal ?',
      'answers': ['Cat', 'Dog', 'Fish'],
    },
    {
      'questionText': 'What is your favorite color ?',
      'answers': ['Blue', 'Red', 'Yellow', 'Green'],
    },
    {
      'questionText': 'What is your favorite character ?',
      'answers': ['A', 'B'],
    }
  ];
本尼迪克特

这应该创建一个与 _question 列表中的项目数相对应的小部件列表。

但是有一种更好的方法可以做到这一点;通过使用map

chidden: _questions.map((element){
   Question(element. questionText, element.answers), //If Question() is a Widget
}).toList(),

然后在您的问题小部件中:

class Question extends StatelessWidget{
   final String question;
   final List<String> answers;

   Question(this.question, this.answers);

   @override
   _QuestionState createState() => _QuestionState();
}

class _QuestionState extends State<Question>{
   
   @override
   Widget build(BuildContext context){
      return Container(
         child: Column(
           children: [ 
            Text(question),
            SizedBox(height: 10.0),
            Column(
              children: widget.answers.map((answer){
                  return ElevatedButton(
                     child: Text(answer),
                     onPressed:(){
                        //Do something when an answer is selected
                     }
                  );
               }).toList()),
            SizedBox(height: 10.0),
         ),
      );
   }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

任何人都可以解释为什么这代码连接,而不是增加的数值?

任何人都可以解释此HashMap行为

任何人都可以对CURIE及其使用方法进行很好的解释吗?

K&R 1.5.4,如果在此代码示例中,任何人都可以解释else吗?

任何人都可以解释这些功能,因为我在官方文档中找不到任何描述

任何人都可以解释这种有关数组排序的奇怪行为吗?

关于pytorch张量的奇怪行为。任何人都可以解释清楚吗?

任何人都可以向我解释ip =“ $ {ip:-$ {default_ip}}

任何人都可以通过示例详细解释多态关联吗?

任何人都可以逐步解释该过程

任何人都可以对以下javascript RE代码进行解释吗?

任何人都可以在HTML服务的GAS文档中解释用户对象示例吗?

任何人都可以向我解释dispatch_sync和dispatch_async之间的区别吗?

任何人都可以说出这段代码出了什么问题吗(python :()的新手

任何人都可以解释这个Javascript数据结构吗?

任何人都可以在此代码中解释javax.swing.SwingUtilities.invokeLater的使用

任何人都可以更正此代码吗?

任何人都可以解释以下声明

任何人都可以解释网络服务器日志数据中的字段吗?

任何人都可以请解释我对我的反应 setState new

任何人都可以指导我查看用于生成中性景观模型的 Netlogo 代码示例吗?

任何人都可以帮助我在颤振中对齐布局吗?

按钮组件中的 MUI 奇怪代码,希望任何人都可以解释

任何人都可以在这段代码中解释我的打印语句吗?

任何人都可以在 matlab 中识别混合 GA PSO 代码中的错误吗?

任何人都可以帮助我理解下面代码中的问题吗?

任何人都可以向我解释这一点吗?关闭

任何人都可以解释以下程序的输出

任何人都可以告诉我如何在颤振中制作这种布局,因为我是颤振的新手,我陷入了这个困境