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

问题描述

我有以下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 (将#修改为@)