【问题标题】:type 'String' is not a subtype of type 'List<String>' in type cast?类型“String”不是类型转换中“List<String>”类型的子类型?
【发布时间】:2021-12-12 04:23:47
【问题描述】:

我该如何解决这个问题?我无法运行代码,因为 String 有错误

        Text(
          questions[_questionsIndex]['questionText'] as String,
          style: TextStyle(color: Colors.orange, fontSize: 30),
        ),
        ...(questions[_questionsIndex]['questionText'] as List<String>).map((answer) {
          return Answer(_answerQuestions, answer);
        }).toList()

【问题讨论】:

    标签: string list visual-studio flutter dart


    【解决方案1】:

    问题是这样的:

    questions[_questionsIndex]['questionText'] as String
    
    questions[_questionsIndex]['questionText'] as List<String>
    

    questions[_questionsIndex]['questionText'] 怎么可能同时是 StringList&lt;String&gt;

    我无法确定,因为您没有显示 questions 变量内部的内容,而且我们不知道您想做什么,但您可能想做这样的事情:

    ...(questions as List<Map<String, dynamic>>).map((question) {
      return Answer(_answerQuestions, question['questionText']);
    }).toList()
    

    【讨论】:

    • 添加问题的价值,我可以更轻松地帮助你,我猜不出问题里面的内容
    【解决方案2】:

    我决定在 Udemy (flutter) 开设一门在线课程,并显示了这段代码,以通过测验加载问题和答案:

        Question(
          questions[_questionsIndex]['questionText'],
        ),
    
        ...(questions[_questionsIndex]['questionText'] as List<String>).map((answer) {
          return Answer(_answerQuestions, answer);
        }).toList()
    

    但实际上它不起作用。我试图将“作为字符串”放在第一行,但模拟器确实显示错误。所以我尝试了你的版本,但它没有帮助我

    【讨论】:

    • 哪一行给你错误??另外,问题变量的值是多少??
    • questions[_questionsIndex]['questionText'] //此行报错,变量值为 var _questionsIndex = 0;
    • const questions = [ { 'questionText': '你最喜欢的颜色是什么?', 'answers': ['Black', 'Red', 'Magenta', 'Orange'] }, etc ..
    • 我已将问题从 List> 编辑为 List>
    • 终于成功了,太棒了。我会慢慢看懂的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 2021-11-07
    • 2020-06-19
    • 2021-08-29
    • 2020-11-24
    相关资源
    最近更新 更多