我正在开发我的flutter应用程序,我想要全屏显示它。
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
void main() {
SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []);
runApp(const MyApp());
}我在main.dart文件中使用SystemChrome,但当我调试代码时,文件"system_chrome.dart“打开时出现以下错误:
} else {
assert(mode == SystemUiMode.manual && overlays != null);
await SystemChannels.platform.invokeMethod<void>(
'SystemChrome.setEnabledSystemUIOverlays',
_stringify(overlays!),
);
}如果我使用SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual,overlays:[]);在我的页面的每个构建方法中,单独调试代码都没有问题。
提前谢谢你!
发布于 2021-10-16 08:16:19
你设置得太早了--在颤动框架建立之前。
在调用您的方法之前,您可以调用WidgetsFlutterBinding.ensureInitialized()来启动并运行Flutter框架。
基本上,将您的main()更改为:
void main() {
WidgetsFlutterBinding.ensureInitialized(); // add this line
SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []);
runApp(MyApp());
}https://stackoverflow.com/questions/69593048
复制相似问题