首页 > 解决方案 > 没有构造函数“MaterialApp”。具有在类“MaterialApp”中声明的匹配参数

问题描述

我刚刚创建了一个新的颤振项目并开始整理我的文件夹,这就是我现在所拥有的:

我的项目文件夹的图像

我正在尝试在 Windows 上运行它,因为我将在这个项目中使用 Flutter Desktop,当我点击运行时,它构建并运行得很好,但是当我进行热重载时,应用程序会抛出以下错误消息:

No constructor 'MaterialApp.' with matching arguments declared in class 'MaterialApp'.
Receiver: MaterialApp
Tried calling: new MaterialApp.()
Found: new MaterialApp.({Key? key, GlobalKey<NavigatorState>? navigatorKey, GlobalKey<ScaffoldMessengerState>? scaffoldMessengerKey, Widget? home, Map<String, (BuildContext) => Widget> routes, String? initialRoute, ((RouteSettings) => Route<dynamic>?)? onGenerateRoute, ((String) => List<Route<dynamic>>)? onGenerateInitialRoutes, ((RouteSettings) => Route<dynamic>?)? onUnknownRoute, List<NavigatorObserver> navigatorObservers, ((BuildContext, Widget?) => Widget)? builder, String title, ((BuildContext) => String)? onGenerateTitle, Color? color, ThemeData? theme, ThemeData? darkTheme, ThemeData? highContrastTheme, ThemeData? highContrastDarkTheme, ThemeMode? themeMode, Locale? locale, Iterable<LocalizationsDelegate<dynamic>>? localizationsDelegates, ((List<Locale>?, Iterable<Locale>) => Locale?)? localeListResolutionCallback, ((Locale?, Iterable<Locale>) => Locale?)? localeResolutionCallback, Iterable<Locale> supportedLocales, bool debugShowMaterialGrid, bool showPerformanceOverlay, bool checkerboardRasterCacheImages, bool checkerboardOffscreenLayers, bool showSemanticsDebugger, bool debugShowCheckedModeBanner, Map<LogicalKeySet, Intent>? shortcuts, Map<Type, Action<Intent>>? actions, String? restorationScopeId}) => MaterialApp

这是我的 main.dart 的内容:

import 'package:flutter/material.dart';

import 'package:beryllium/src/screens/HomeScreen.dart';

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

class MyApp extends StatefulWidget {
  MyApp({Key key}) : super(key: key);

  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Beryllium',
      initialRoute: '/',
      routes: {
        '/': (contex) => HomeScreen(), //Home screen widget
      },
    );
  }
}

这是 HomeScreen.dart 文件的内容:

import 'package:flutter/material.dart';

class HomeScreen extends StatefulWidget {
  HomeScreen({Key key}) : super(key: key);

  @override
  _HomeScreenState createState() => _HomeScreenState();
}

class _HomeScreenState extends State<HomeScreen> {
  @override
  Widget build(BuildContext context) {
    return new _HomeScreen();
  }
}

class _HomeScreen extends StatelessWidget {
  const _HomeScreen({Key key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          title: Text('My Book'),
        ),
        body: Center(
          child: Container(
            child: Text('Home Screen'),
          ),
        ));
  }
}

如果有人对避免此错误有任何想法,请帮帮我。

提前致谢。

标签: fluttermaterial-designnosuchmethoderrorhot-reloadflutter-hotreload

解决方案


推荐阅读