首页 > 解决方案 > 未实现的错误(颤振)

问题描述

我对使用 Flutter 进行编码非常陌生,并遵循本课程让我创建有状态小部件。问题是当我这样做时,我得到这个 throw UnimplementedError(); 它应该返回 null。我不知道我做错了什么。

my code:

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {

  @override
  State<StatefulWidget> createState() {
    // TODO: implement createState
    throw UnimplementedError();
  }
}
class MyAppState extends State<MyApp> {
  var questionIndex = 0;

  void answerQuestion() {
    setState(() {
      questionIndex = questionIndex + 1;
    });
    print(questionIndex);
  }

  @override
  Widget build(BuildContext context) {
    var questions = [
      "What's your favourite color?",
      "What's your favourite animal?",
    ];
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text(
            "My First App",
          ),
        ),
        body: Column(
          children: [
            Text(
              questions[questionIndex],
            ),
            RaisedButton(
              child: Text("Answer 1"),
              onPressed: answerQuestion,
            ),
            RaisedButton(
              child: Text("Answer 2"),
              onPressed: answerQuestion,
            ),
            RaisedButton(
              child: Text("Answer 3"),
              onPressed: answerQuestion,
            )
          ],
        ),
      ),
    );
  }
}

谢谢,

再见!

标签: visual-studioflutterwidgetthrowstateful

解决方案


createState()方法包括TODO注释:

@override
State<StatefulWidget> createState() {
  // TODO: implement createState
  throw UnimplementedError();
}

这条评论是一个善意的提醒,我们还有一些事情要做。

然而,这throw UnimplementedError()使得提醒不太友好,迫使我们完成我们的TODO任务并删除该UnimplementedError()行以使其工作:

MyAppState createState() => MyAppState();

推荐阅读