dev*_*jay 47
当您在调试模式下运行您的应用程序并且出现问题时,您会看到带有日志的可怕的红色错误屏幕。在发布模式下,您只会看到一个灰色屏幕。
现在,当您在调试模式下运行您的应用程序时,有时会抛出一些错误,但我们错误地忽略了它们,因为我们看到应用程序在屏幕上完美运行,但是如果您在调试模式下打开日志,您会看到一些错误消息。
对我来说是这样的:
???????? Exception caught by widgets library ???????????????????????????????????????????????????????
The following assertion was thrown while applying parent data.:
Incorrect use of ParentDataWidget.
The ParentDataWidget Expanded(flex: 1) wants to apply ParentData of type FlexParentData to a RenderObject, which has been set up to accept ParentData of incompatible type StackParentData.
Usually, this means that the Expanded widget has the wrong ancestor RenderObjectWidget. Typically, Expanded widgets are placed directly inside Flex widgets.
The offending Expanded is currently placed inside a Stack widget.
Run Code Online (Sandbox Code Playgroud)
我的应用程序在调试模式下完美运行,而 Flutter 仍然在后台抛出此错误。
现在,当我在发布模式下运行应用程序时,我看到一个灰色屏幕,这与我在调试模式下完美运行的应用程序不同。
当我检查日志时,我看到错误消息:
Flutter app show grey screen in release mode but works fine in debug mode Instance of 'DiagnosticsProperty<void>'
Run Code Online (Sandbox Code Playgroud)
那么解决方案呢?
在调试模式下运行您的应用程序并检查日志,我相信您会在那里找到问题。只要您的代码中存在错误,更改 Flutter 频道就无济于事。
Sha*_*han 13
就我而言,我在我的一个小部件上使用了Expanded
内部的小部件。Stack
错误的方法
Stack(
children: [
Expanded(child: buildHeader(context)),
Align()
]),
Run Code Online (Sandbox Code Playgroud)
正确的做法
Stack(
children: [
buildHeader(context),
Align()
]),
Run Code Online (Sandbox Code Playgroud)
我在 Android 和 iOS 平台上都遇到了这个问题,这就是我解决它的方法。
这个问题已经存在一段时间了,这里是相关问题。
我遇到过这个问题,但这取决于代码。对我来说,对于CacheNetworkImage issues#404,我传递了错误imageUrl
或 null,这导致了灰屏。即使我在升级到1.17.1(之前的flutter 1.12.13+hotfix.8)之前没有正确处理,UI也可以在没有灰屏的情况下正常工作,现在一切都需要更加小心。
归档时间: |
|
查看次数: |
10303 次 |
最近记录: |