微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

提取动态创建的小部件的值多种类型的小部件

如何解决提取动态创建的小部件的值多种类型的小部件

我有以下json

[
{
"question": "Question 1","input_type": "button","symptom_name": "General","input_type_data": [
  {
    "text": "Yes"
  },{
    "text": "Noo"
  }
]
},{
"question": "Question 2","input_type": "text","input_type_data": null
}
]

我已经根据条件创建了小部件,例如,如果输入类型是文本,则创建了TextFormField,如果输入类型是按钮,则创建了RadioListTile。

代码是:

ListView.builder(               
            itemCount:questionsList.length,itemBuilder: (BuildContext context,int index) {
               return questionsLayout(questionsList[index]);                 
            }),

//问题布局小部件

 questionsLayout(Question questions)
    {
      if(questions.inputType=="text")
      {            
        return typeText(questions);
      }
      else if(questions.inputType=="button")
      {            
        return typeButton(questions);
      }
    }

// typeText窗口小部件的代码

 //If the widget type is Text
    Widget typeText(Question questions)
    {
      return Container(
        child:Column(children: [
            Align(alignment: Alignment.bottomLeft,child: Text("Q) "+questions.question)),SizedBox(height: 10,),TextFormField(

     ),],)
      );
    }

//单选按钮的小工具

   Widget typeButton(Question questions)
    {
      return SizedBox(
        height: 200,child: Column(children: [
            Align(alignment: Alignment.bottomLeft,customButtons(questions),);
    }

// custom按钮的代码位于listview.builder中。

如果我想最后获取小部件的所有值...就像在textformfield中输入的文本和用户选择的单选按钮值...应该做什么。任何人都可以帮忙。 我可以尝试的任何可能的解决方案吗??

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。