Горячая перезагрузка и горячая перезагрузка в Android Studio с Flutter - PullRequest
0 голосов
/ 28 марта 2020

Я тестирую мое стартовое приложение Flutter как на виртуальном, так и на физическом устройстве. Проблема в том, что приложение не обновляется на экране во время горячей перезагрузки (это настроено для работы при каждом сохранении файла), а только при горячей перезагрузке. На скриншоте это соответствует правой кнопке, а не левой.

Это нормально или что-то не так?

enter image description here

Просто в случае, если это содержимое моего 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',
            ),
          ),
        ),
      ),
    ),
  );
}

1 Ответ

1 голос
/ 28 марта 2020

Вы пишете все внутри основной функции. горячая перезагрузка не работает.

Они упоминали об этом в Документация по флаттеру

Как правило, если модифицированный код находится ниже по потоку от root Метод сборки виджета, затем горячая перезагрузка ведет себя как ожидалось. Однако, если измененный код не будет повторно выполнен в результате перестройки дерева виджетов, вы не увидите его эффектов после горячей перезагрузки.

, поэтому вам нужно написать свой код ниже root виджет.

Пишите код так:

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',
        ),
      ),
    ),
  ),
);
}
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...