-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Description
Steps to Reproduce
1.Scroll up the list
2.Scroll down the list, sometimes the first item would be disappear and show the error log.

And I also upload the demo if you want to check source code.
https://github.com/keeweeChang/flutter_news/tree/list_error
Logs
I/flutter (30902): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (30902): The following assertion was thrown building FutureBuilder(state:
I/flutter (30902): _FutureBuilderState#fd3d0):
I/flutter (30902): 'package:flutter/src/rendering/object.dart': Failed assertion: line 1409 pos 14:
I/flutter (30902): '_debugSubtreeRelayoutRootAlreadyMarkedNeedsLayout()': is not true.
I/flutter (30902):
I/zygote (30902): Do partial code cache collection, code=59KB, data=43KB
I/flutter (30902): Either the assertion indicates an error in the framework itself, or we should provide substantially
I/flutter (30902): more information in this error message to help you determine and fix the underlying cause.
I/flutter (30902): In either case, please report this assertion by filing a bug on GitHub:
I/flutter (30902): https://github.com/flutter/flutter/issues/new?template=BUG.md
I/flutter (30902):
I/flutter (30902): When the exception was thrown, this was the stack:
I/flutter (30902): #2 RenderObject.markNeedsLayout (package:flutter/src/rendering/object.dart:1409:14)
I/flutter (30902): #3 RenderBox.markNeedsLayout (package:flutter/src/rendering/box.dart:1842:11)
I/flutter (30902): #4 RenderObject.dropChild (package:flutter/src/rendering/object.dart:1158:5)
I/flutter (30902): #5 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin.child= (package:flutter/src/rendering/object.dart:2744:7)
I/flutter (30902): #6 SingleChildRenderObjectElement.removeChildRenderObject (package:flutter/src/widgets/framework.dart:4909:18)
I/flutter (30902): #7 RenderObjectElement.detachRenderObject (package:flutter/src/widgets/framework.dart:4749:36)
I/flutter (30902): #8 Element.detachRenderObject. (package:flutter/src/widgets/framework.dart:2866:13)
I/flutter (30902): #9 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:3775:14)
I/flutter (30902): #10 Element.detachRenderObject (package:flutter/src/widgets/framework.dart:2865:5)
I/flutter (30902): #11 Element.deactivateChild (package:flutter/src/widgets/framework.dart:2995:11)
I/flutter (30902): #12 Element.updateChild (package:flutter/src/widgets/framework.dart:2760:7)
I/flutter (30902): #13 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3752:16)
I/flutter (30902): #14 Element.rebuild (package:flutter/src/widgets/framework.dart:3564:5)
I/flutter (30902): #15 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2277:33)
I/zygote (30902): After code cache collection, code=59KB, data=43KB
I/zygote (30902): Increasing code cache capacity to 256KB
I/flutter (30902): #16 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:700:20)
I/flutter (30902): #17 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:275:5)
I/flutter (30902): #18 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
I/flutter (30902): #19 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
I/flutter (30902): #20 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
I/flutter (30902): #24 _invoke (dart:ui/hooks.dart:209:10)
I/flutter (30902): #25 _drawFrame (dart:ui/hooks.dart:168:3)
I/flutter (30902): (elided 5 frames from class _AssertionError and package dart:async)
I/flutter (30902): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter (30902): Another exception was thrown: 'package:flutter/src/rendering/object.dart': Failed assertion: line 1153 pos 12: 'child.parentData != null': is not true.
I/flutter (30902): Another exception was thrown: NoSuchMethodError: The getter 'debugDoingLayout' was called on null.
I/flutter (30902): Another exception was thrown: RenderBox was not laid out: _RenderListTile#46ebb relayoutBoundary=up5 NEEDS-PAINT DETACHED
I/flutter (30902): Another exception was thrown: RenderBox was not laid out: RenderPadding#0a187 relayoutBoundary=up4 NEEDS-PAINT DETACHED
I/flutter (30902): Another exception was thrown: RenderBox was not laid out: RenderSemanticsAnnotations#d9f7e relayoutBoundary=up3 NEEDS-PAINT DETACHED
I/flutter (30902): Another exception was thrown: RenderBox was not laid out: RenderPointerListener#e0701 relayoutBoundary=up2 NEEDS-PAINT DETACHED
I/flutter (30902): Another exception was thrown: RenderBox was not laid out: RenderSemanticsGestureHandler#57551 relayoutBoundary=up1 NEEDS-PAINT DETACHED
I/flutter (30902): Another exception was thrown: RenderBox was not laid out: RenderFlex#915e5 NEEDS-PAINT DETACHED
I/flutter (30902): Another exception was thrown: NoSuchMethodError: The method '<=' was called on null.
Flutter doctor
• Flutter version 1.3.8 at /Users/louis/flutter/flutterSDK
• Framework revision e5b1ed7a7f (13 days ago), 2019-03-06 14:23:37 -0800
• Engine revision f4951df193
• Dart version 2.2.1 (build 2.2.1-dev.0.0 571ea80e11)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at /Users/louis/Library/Android/sdk
• Android NDK at /Users/louis/Library/Android/sdk/ndk-bundle
• Platform android-28, build-tools 28.0.3
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
• All Android licenses accepted.
[✓] iOS toolchain - develop for iOS devices (Xcode 10.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 10.1, Build version 10B61
• ios-deploy 1.9.4
• CocoaPods version 1.6.0
[✓] Android Studio (version 3.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin version 31.3.3
• Dart plugin version 182.5124
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
[!] IntelliJ IDEA Community Edition (version 2018.2.3)
• IntelliJ at /Applications/IntelliJ IDEA CE.app
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
• For information about installing plugins, see
https://flutter.io/intellij-setup/#installing-the-plugins
[✓] VS Code (version 1.32.1)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 2.24.0
[✓] Connected device (1 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 8.1.0 (API 27) (emulator)
Update:
According to my test, the error is solved when I use a fixed height Container to wrap the Item. But I want to ask the ListView item is not supported dynamic height widget or any options I should be set. Or it is an issue in debug mode?
Here is the issue solved widget structure:
