【问题标题】:Flutter: Why is this class not recognized as a class?Flutter:为什么这个类不被识别为一个类?
【发布时间】:2020-04-03 15:20:06
【问题描述】:

我是 Flutter 的新手,所以这可能是一件非常小的事情。我正在创建一个类,但该类未被识别为一个类:

class CamPage extends StatefulWidget {
      ...
}

class _CamPageState extends State<CamPage> {
      ...
}

当我在 Main.dart 中执行此操作时:

class MyApp extends StatelessWidget{
  @override
  Widget build(BuildContext context){
    return new MaterialApp(
      title: 'Flutter Demo',
      theme: new ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: new CamPage(title: 'Title'),
      );
  }
}

上面写着:Undefined class 'CamPage'

我省略了CamPage 类中的代码,因为它不相关,不是问题所在。我有一个不同的类,MyHomePage,如果我在 main.dart 中以完全相同的方式调用它,它将起作用。如果我将这个工作类代码完全复制并粘贴到CamPage,并且只更改类的名称,它仍然不起作用。

所以MyHomePage 有效,而CamPage 无效。虽然它们包含完全相同的代码,但只有类名不同。

我几天前发了MyHomePage,今天才发了CamPage。同时,Android Studio 已经更新,项目已经链接到 git。问题可能与此有关吗?现在,当我创建一个新的 Dart 文件时,系统会询问我是否也想将该文件添加到 git。如果我单击yes,Dart 文件的名称会以绿色字母出现在各处。如果我单击no,该 Dart 文件的名称到处都会变成红色。这些绿色和红色文件不起作用。 MyHomePage,之前创建的 Dart 文件,仍然是黑色字母,并且可以正常工作。

所以,问题是:为什么MyHomePage 工作(和黑色),以及为什么CamPage 不工作(和绿色)。

有谁知道这可能在哪里?见图片。所以MyHomePageCamPage 包含完全相同的代码,这不是问题所在。很奇怪。

enter image description here

【问题讨论】:

    标签: android class dart


    【解决方案1】:

    文件名的颜色变化与 git 有关,绿色文件是自上次提交以来新创建的尚未提交的文件,蓝色文件是上次提交后已存在的有活动更改的文件,黑色文件未更改文件。

    至于您的问题,没有更多信息,请仔细检查您是否已在 main.dart 中导入了 CamPage,就像导入 MyHomePage 一样。如果这不是问题,请添加更多代码或 android studio 中显示的错误。

    【讨论】:

      猜你喜欢
      • 2021-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-26
      • 1970-01-01
      相关资源
      最近更新 更多