Android studio Android Studio中的热重新加载与热重启

Android studio Android Studio中的热重新加载与热重启,android-studio,flutter,dart,Android Studio,Flutter,Dart,我正在虚拟和物理设备上测试我的Flitter starter应用程序。问题在于,应用程序在热重新加载时不会在屏幕上更新(配置为在每次文件保存时工作),而仅在热重启时更新。在屏幕截图上,这对应于右侧按钮,而不是左侧按钮 这是正常的还是有什么问题 以防万一,这是我的main.dart文件的内容: import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold

我正在虚拟和物理设备上测试我的Flitter starter应用程序。问题在于,应用程序在热重新加载时不会在屏幕上更新(配置为在每次文件保存时工作),而仅在热重启时更新。在屏幕截图上,这对应于右侧按钮,而不是左侧按钮

这是正常的还是有什么问题

以防万一,这是我的
main.dart
文件的内容:

import 'package:flutter/material.dart';

void main() {
  runApp(
    MaterialApp(
      home: Scaffold(
        backgroundColor: Colors.blueGrey,
        appBar: AppBar(
          title: Center(
            child: Text('Hi Everybody!'),
          ),
          backgroundColor: Colors.blueGrey[900],
        ),
        body: Center(
          child: Image(
            image: AssetImage(
              'images/diamond.png',
            ),
          ),
        ),
      ),
    ),
  );
}

您正在主函数中编写所有内容。所以热重新加载不起作用

他们在报告中提到了这一点

一般来说,如果修改后的代码位于根的下游 小部件的构建方法,然后热重新加载按预期运行。然而, 如果重新生成后修改后的代码不会重新执行 小部件树,则在热重新加载后不会看到其效果

因此,您需要在根小部件下面编写代码

编写如下代码:

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        backgroundColor: Colors.blueGrey,
        appBar: AppBar(
          title: Center(
            child: Text('Hi Everybody!'),
          ),
      backgroundColor: Colors.blueGrey[900],
    ),
    body: Center(
      child: Image(
        image: AssetImage(
          'images/diamond.png',
        ),
      ),
    ),
  ),
);
}
}

您正在主函数中编写所有内容。所以热重新加载不起作用

他们在报告中提到了这一点

一般来说,如果修改后的代码位于根的下游 小部件的构建方法,然后热重新加载按预期运行。然而, 如果重新生成后修改后的代码不会重新执行 小部件树,则在热重新加载后不会看到其效果

因此,您需要在根小部件下面编写代码

编写如下代码:

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        backgroundColor: Colors.blueGrey,
        appBar: AppBar(
          title: Center(
            child: Text('Hi Everybody!'),
          ),
      backgroundColor: Colors.blueGrey[900],
    ),
    body: Center(
      child: Image(
        image: AssetImage(
          'images/diamond.png',
        ),
      ),
    ),
  ),
);
}
}

我认为您正在编写main函数中的所有内容。否则,请添加您的代码。@MSARKrish是的,我正在写
main
函数中的所有内容。我认为您正在写主函数中的所有内容。否则请添加您的代码。@MSARKrish是的,我正在
main
函数中编写所有内容。