AlexV's Blog

Welcome to my home.

Flutter 踩坑瞎记

在群里会碰到各种各样的奇葩问题,每个版本都或多或少带点坑。

稍微记录下,否则下次可能会忘记何时出现的。

遇到的疑难杂症

Text 中英文混排,如何对齐?

Text(
  textHeightBehavior: TextHeightBehavior(
    applyHeightToLastDescent: false,
  ),
)

在使用 Animation 的时候,突然间出现了 parent != null 或者 called on null 的错误

这个问题源自于两个人的示例,在他们的代码中,发现他们将 AnimationController 进行了向下传递再绑定的操作。一个出现了 RenderBox 计算空调用的错误,一个出现了 Animationparent 为空的错误。

经过几个步骤的排查,基本断定是因为传入的 Widget 被重新创建了 Element 。很巧,两人的 Stateless/StatefulWidget 都不是终值。在绑定了 TickerProvider 的页面更新时,由于 Element 被重建了,导致了 controller 的丢失,最终空调用。

Android 打包时缺少 debug 或 profile 文件

Gradle 6.x 的深渊巨坑,两种解决方案:

  • 降回 5.6.4
  • 每次打包时,先构建 debug/profile ,再打 release。

各个稳定版本中存在的问题

1.20.x

1.17.x

点赞