以下做法debug模式下是有效的,但是在realease模式下会有bug:
请使用以下做法:
Flutter 在使用MaterialApp之前获取MediaQueryData 2
在使用 flutter_screenutil 这个插件的时候,需要注册
ScreenUtil.initcontext, 750, height: 1560, allowFontScaling: true);
这句话,需要放那里呢?一般情况下都是放到MaterialApp之后的HomePage上。
这样子就出现一个问题了。我需要在MaterialApp配置主题上就需要用到 flutter_screenutil 插件
ScreenUtil).setSpgetPrimaryTextSize))
所以必须需要将 ScreenUtil.init 放到MaterialApp之前。
代码如下:
void main) { runAppRunApp)); } class RunApp extends StatefulWidget { @override _RunAppState createState) => _RunAppState); } class _RunAppState extends State<RunApp> { @override Widget buildBuildContext context) { return MediaQuery data: MediaQueryData.fromWindowui.window), child: ScreenApp), ); } } class ScreenApp extends StatefulWidget { @override _ScreenAppState createState) => _ScreenAppState); } class _ScreenAppState extends State<ScreenApp> { @override Widget buildBuildContext context) { // 注册 ScreenUtil.initcontext, 750, height: 1560, allowFontScaling: true); return MyApp); } }
