Flutter构建MediaQuery是一个错误吗?

时间:2019-11-27 07:53:29

标签: flutter

“构建”问题。

这个问题花了我很长时间,因为我一直在寻找原因的布局。 我不确定Flutter是否违反了某些规则,或者不确定是否是错误,但是我想知道。 以下代码无法正常运行:

Widget build(BuildContext context) {
  ///
  if (_wTextStyleDefault == null) {
    _wTextStyleDefault = TextStyle(
        color: _colorText,
        fontFamily: 'DS',
        fontSize: MediaQuery.of(context).size.width / 2.5,
        decoration: TextDecoration.none);
  }
  debugPrint(
      'build: _wTextStyleDefault.fontSize = ${_wTextStyleDefault.fontSize}');

在发布模式下运行此操作会导致以下结果:

flutter run --release
I/flutter ( 5209): build: _wTextStyleDefault.fontSize = 0.0

在调试模式下运行相同的程序会导致以下结果:

flutter run
I/flutter ( 5464): build: _wTextStyleDefault.fontSize = 144.0

扑打医生干净了。在Windows上使用最新的Flutter和Dart。 只需将TextStyle变量设置为局部变量,即可按预期运行所有问题。

我确实知道调试和发布模式之间存在时序差异。

使用全局变量会导致不同的结果吗?

0 个答案:

没有答案