You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter类型不匹配报错:'quiz question'实例无法转为String

Flutter测验结果页类型不匹配崩溃解决方案

问题根源

错误提示instance of 'quiz question':type 'quiz question' not a subtype of type 'string',本质是你在结果页代码里把QuizQuestion类的实例直接当成String类型使用了(比如直接传给Text组件),但Text组件仅接受String类型,因此触发类型转换错误,导致页面崩溃。

解决步骤

  1. 确认QuizQuestion类的属性:从你提供的类截图来看,它应该包含questionText(问题文本)这类字符串属性。
  2. 修正展示逻辑:不要直接传入QuizQuestion实例,而是调用它的字符串属性:
    • 错误写法:
      Text(quizQuestion) // 直接传实例,类型不匹配
      
    • 正确写法:
      Text(quizQuestion.questionText) // 传入类内的字符串属性
      
  3. 批量展示答案摘要:如果要列出所有问题及答案,遍历存储的QuizQuestion列表,逐个取出对应字段:
    // 假设你保存了所有测验问题的列表
    List<QuizQuestion> quizQuestions = [...];
    
    // 结果页中构建展示组件
    Column(
      children: quizQuestions.map((question) {
        return Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: [
            Text('问题:${question.questionText}'),
            Text('正确答案:${question.correctAnswer}'), // 假设类中有correctAnswer属性
          ],
        );
      }).toList(),
    )
    
  4. 检查参数传递:如果是页面跳转时传参,别把QuizQuestion实例误当成String传递,确保在结果页正确接收并解析实例的属性。

内容的提问来源于stack exchange,提问作者cfranco87

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 16:12:06