簡體   English   中英

無法從 dart 列表中訪問單個元素

[英]Can't access individual element from list in dart

我正在嘗試創建一個簡單的測驗應用程序,其中包含一個問題作為Text小部件和 4 個RaisedButton小部件作為選項。 這就是我想要創建的: 測驗

這是我目前的代碼:

@override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: SafeArea(
        child: Scaffold(
          appBar: AppBar(
            title: Text(
              "Flutter Demo Home Page"
            ),
          ),
          body: Column(
            children: [
              Question(
                questions[questionIndex]["questionText"]
              ),
              Column(
                children: getAnswerList()[questionIndex],
              )
            ],
          )
        ),
      ),
    );
  }

getAnswerList():

List<List<Answer>> getAnswerList() {
    List<List<Answer>> answerList = [[]];
    for (Map m in questions) {
      List<String> answers = m["answers"];
      List<Answer> temp = [];
      for (String ans in answers) {
        temp.add(
            Answer(
                answerQuestion,
                ans
            )
        );
      }
      answerList.add(temp);
    }
    return answerList;
  }

在此函數中,我創建了Answer小部件的臨時列表,然后將其添加到List<List<Answer>>

answerQuestion()是一種設置更新的questionIndex

void answerQuestion() {
    setState(() {
      questionIndex++;
    });
    }

回答小部件:

import 'package:flutter/material.dart';

class Answer extends StatelessWidget {
  final Function selectHandler;
  final String answerText;

  Answer(this.selectHandler, this.answerText);
  @override
  Widget build(BuildContext context) {
    return Container(
      width: double.infinity,
      child: RaisedButton(
        color: Colors.blue,
        textColor: Colors.white,
        child: Text(
            answerText
        ),
        onPressed: selectHandler,
      ),
    );
  }
}

但是第二列小部件沒有顯示: 錯誤 為什么不顯示第二列?

該列應包含小部件列表,目前未在代碼中完成將小部件列表分配給 children 屬性

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM