Есть ли способ построить переменные, логические значения и строки в PageView.Builder во флаттере - PullRequest
0 голосов
/ 11 апреля 2020

Я создаю приложение, которое получает вопросы из коллекции Firestore и отображает их в PageView.builder. Под вопросом есть флажок и текстовое поле, в которое пользователь вводит данные. У меня вопрос, как мне создать логическое значение для флажка на основе заголовка вопроса. Например, если заголовок вопроса Q1, логическое значение должно быть

bool _Q1 = false; и строка для поля textform будет: String Q1 = "";

ниже мой код:

body: PageView.builder(
          itemCount: litems.length,
          itemBuilder: (BuildContext context, int index){
               ListView(
                 children: <Widget>[
                    Checkbox( 
                        checkColor: Colors.white,
                        activeColor: Colors.black,
                        value: _something,
                        onChanged: (bool checked){
                          setState(() => _Q1 = checked);
                        },
                      )
                  TextFormField(
                    decoration: InputDecoration(
                      labelText: 'Remarks (Optional)',
                      border: InputBorder.none,
                      fillColor: Colors.blueGrey[50],
                      filled: true,
                      enabledBorder: OutlineInputBorder(
                        borderRadius: BorderRadius.circular(10), 
                        borderSide: BorderSide(color: Colors.blueGrey[50])
                        ),
                      focusedBorder: OutlineInputBorder(
                        borderRadius: BorderRadius.circular(10),
                        borderSide: BorderSide(color: Colors.blueGrey[50])
                      )
                    ),
                    keyboardType: TextInputType.multiline,
                    minLines: 8,
                    maxLines: 8,
                    onChanged: (val){ Q1 = val},

                  ),

]
)

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...