Flutter:如何将main.dart(入口点)更改为Flutter中的其他页面?

38
  • 我开始在main.dart中开发应用程序的“主页”。
  • 然后我创建了“Login.dart”页面,现在我希望我的应用程序从“Login.dart”页面开始。

我是Flutter的新手。

7个回答

47
< p > -t参数支持各种命令(运行,构建等),请使用它。

flutter run -t lib/my_other_main.dart

谢谢您的回复,它很有帮助。但是只有在我再次调试应用程序之前才能正常工作。当我进行调试时,它会从“main.dart”开始,而不是“Login.dart”。 - bunny
如果你使用Android Studio/IntelliJ,你需要将参数添加到运行配置中。我不知道VSCode是否需要这样做。 - Günter Zöchbauer
@GünterZöchbauer,我发现了一篇很棒的文章,它帮助我解决了关于VSCode的问题-> https://medium.com/flutter-community/add-multiple-targets-in-flutter-apps-vs-code-android-studio-efe7e588e0cd - Daniel Fernandes

25

如果您想使用位于 lib/config/main_production.dart 以外的文件作为发布应用程序的主入口点,则必须按照以下方式进行操作:

flutter build apk -t lib/config/main_production.dart

正是我所需要的 - 如何更改在设备上运行的构建应用程序。 - wujek

25
Android Studio中,您可以从编辑配置更改Dart入口点。

转到:运行 -> 编辑配置 -> Dart入口点

输入图像描述

输入图像描述


1
我唯一能够进入“编辑配置”页面的方法,是先单击“运行”按钮。 - Yster
1
在修改配置后,您需要在类名顶部添加void main() => runApp(MyApp());。 - vidalbenjoe
对我来说不起作用,我也不确定为什么。已经尝试了一切。 - Faizan Mubasher

17

按照以下图片进行操作:

点击运行按钮

创建一个启动JSON文件

点击Dart&Flutter

务必填写正确的路径:

提示:("lib/start.dart") 只是一个示例。

更改入口点

使用图像(5)测试您的新入口点:

测试您的新入口点


8

flutter run -t lib/main_admin.dart 中的 t 表示目标,其默认值为 lib/main.dart。如果您没有指定 -t,则会转到 lib/main.dart。

您还可以通过在 flutter run 命令中传递 --flavor 来加载不同的风格,例如生产、开发和测试,来使用相同的入口点。


7
在您的main.dart中,您可以指定应用程序打开的第一个屏幕:
runApp(new MaterialApp(
  debugShowCheckedModeBanner: false,
  theme: //theme
  title: "Title",
  home: new Login(), //Here you can specify the screen the app starts on.
  routes: <String, WidgetBuilder>{
    //routes
  },
));

我不确定这是否比Günter的答案更好,但我的方法意味着你在构建或运行时不必始终指定文件名。

0
我们有一个单独的文件来处理这个问题。请按照以下步骤操作: 1. 进入 test > widget.test.dart 2. 将 import 中的 `package:flutter_async/main.dart` 更改为 `package:flutter_async/your_file_name.dart`
在您定义的类中,您可以使用您的 `MyApp`(`runapp` 函数将其作为输入)类,或者您还可以将 `MyApp` 类重命名为来自 widget.testfile 的其他类,作为您应用程序的第一个屏幕。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接