我目前正在学习 Flutter,并尝试使用 Stack 中的 Positioned 小部件将轮播定位在屏幕底部。目前,堆栈是一张地图,轮播位于其顶部。当我使用定位的小部件将轮播移动到底部时,它消失了,我遇到了这个错误。
\n\nI/flutter (19228): Another exception was thrown: \'package:flutter/src/rendering/object.dart\': Failed assertion: line 1578 pos 12: \'!_debugDoingThisLayout\': is not true.\n I/flutter (19228): Another exception was thrown: RenderBox was not laid out: RenderRepaintBoundary#51ed3 relayoutBoundary=up4 NEEDS-LAYOUT NEEDS-PAINT\n Restarted application in 1,970ms.\n I/flutter (19228): \xe2\x95\x90\xe2\x95\x90\xe2\x95\xa1 EXCEPTION CAUGHT BY RENDERING LIBRARY \xe2\x95\x9e\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\n I/flutter (19228): The following assertion was thrown during performResize():\n I/flutter (19228): Horizontal viewport was given unbounded width.\n I/flutter (19228): Viewports expand in the scrolling direction to fill their container.In this case, a horizontal\n I/flutter (19228): viewport was given an unlimited amount of horizontal space in which to expand. This situation\n I/flutter (19228): typically happens when a scrollable widget is nested inside another scrollable widget.\n I/flutter (19228): If this widget is always nested in a scrollable widget there is no need to use a viewport because\n I/flutter (19228): there will always be enough horizontal space for the children. In this case, consider using a Row\n I/flutter (19228): instead. Otherwise, consider using the "shrinkWrap" property (or a ShrinkWrappingViewport) to size\n I/flutter (19228): the width of the viewport to the sum of the widths of its children.\n I/flutter (19228): \n I/flutter (19228): When the exception was thrown, this was the stack:\n I/flutter (19228): #0 RenderViewport.performResize.<anonymous closure> (package:flutter/src/rendering/viewport.dart:1155:15)\n I/flutter (19228): #1 RenderViewport.performResize (package:flutter/src/rendering/viewport.dart:1182:6)\n I/flutter (19228): #2 RenderObject.layout (package:flutter/src/rendering/object.dart:1619:9)\n I/flutter (19228): #3 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #4 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #5 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #6 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #7 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #8 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #9 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #10 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #11 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #12 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #13 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #14 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #15 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #16 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #17 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #18 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #19 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #20 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #21 RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:258:13)\n I/flutter (19228): #22 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #23 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:549:15)\n I/flutter (19228): #24 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #25 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:142:11)\n I/flutter (19228): #26 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:339:7)\n I/flutter (19228): #27 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:212:7)\n I/flutter (19228): #28 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:356:14)\n I/flutter (19228): #29 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #30 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #31 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #32 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #33 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1188:11)\n I/flutter (19228): #34 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #35 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #36 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #37 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #38 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #39 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #40 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #41 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #42 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #43 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #44 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #45 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #46 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #47 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #48 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #49 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #50 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:2881:13)\n I/flutter (19228): #51 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #52 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:510:15)\n I/flutter (19228): #53 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #54 __RenderTheatre&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #55 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #56 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #57 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #58 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #59 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #60 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #61 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #62 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #63 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #64 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #65 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #66 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #67 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #68 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #69 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #70 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #71 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #72 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #73 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #74 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #75 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #76 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #77 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #78 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #79 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #80 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #81 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:2881:13)\n I/flutter (19228): #82 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #83 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:510:15)\n I/flutter (19228): #84 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #85 __RenderTheatre&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #86 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #87 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #88 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #89 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #90 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #91 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #92 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #93 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #94 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #95 _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:104:13)\n I/flutter (19228): #96 RenderObject.layout (package:flutter/src/rendering/object.dart:1634:7)\n I/flutter (19228): #97 RenderView.performLayout (package:flutter/src/rendering/view.dart:147:13)\n I/flutter (19228): #98 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1509:7)\n I/flutter (19228): #99 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:768:18)\n I/flutter (19228): #100 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:281:19)\n I/flutter (19228): #101 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:677:13)\n I/flutter (19228): #102 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:219:5)\n I/flutter (19228): #103 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)\n I/flutter (19228): #104 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)\n I/flutter (19228): #105 _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.scheduleWarmUpFrame.<anonymous closure> (package:flutter/src/scheduler/binding.dart:751:7)\n I/flutter (19228): #107 _Timer._runTimers (dart:isolate/runtime/libtimer_impl.dart:382:19)\n I/flutter (19228): #108 _Timer._handleMessage (dart:isolate/runtime/libtimer_impl.dart:416:5)\n I/flutter (19228): #109 _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)\n I/flutter (19228): (elided one frame from package dart:async)\n I/flutter (19228): \n I/flutter (19228): The following RenderObject was being processed when the exception was fired:\n I/flutter (19228): RenderViewport#90797 NEEDS-LAYOUT NEEDS-PAINT\n I/flutter (19228): creator: Viewport \xe2\x86\x90 _ScrollableScope \xe2\x86\x90 IgnorePointer-[GlobalKey#3c2b1] \xe2\x86\x90 Semantics \xe2\x86\x90 Listener \xe2\x86\x90\n I/flutter (19228): _GestureSemantics \xe2\x86\x90 RawGestureDetector-[LabeledGlobalKey<RawGestureDetectorState>#cd194] \xe2\x86\x90\n I/flutter (19228): _ScrollSemantics-[GlobalKey#45621] \xe2\x86\x90 RepaintBoundary \xe2\x86\x90 CustomPaint \xe2\x86\x90 RepaintBoundary \xe2\x86\x90\n I/flutter (19228): NotificationListener<ScrollNotification> \xe2\x86\x90 \xe2\x8b\xaf\n I/flutter (19228): parentData: <none> (can use size)\n I/flutter (19228): constraints: BoxConstraints(0.0<=w<=Infinity, h=180.0)\n I/flutter (19228): size: MISSING\n I/flutter (19228): axisDirection: right\n I/flutter (19228): crossAxisDirection: down\n I/flutter (19228): offset: _PagePosition#6c97d(offset: null, range: null..null, viewport: null, ScrollableState,\n I/flutter (19228): PageScrollPhysics -> ClampingScrollPhysics, IdleScrollActivity#73c09, ScrollDirection.idle)\n I/flutter (19228): anchor: 0.0\n I/flutter (19228): This RenderObject had the following child:\n I/flutter (19228): RenderSliverFillViewport#ce224 NEEDS-LAYOUT NEEDS-PAINT\n I/flutter (19228): \xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe
正如您的日志所解释的:
“约束:BoxConstraints(0.0<=w<=无穷大,h=180.0)”
您必须定义 的宽度,它Container
是您的父级Swiper
。您还必须使用行和列来组织堆栈中未定位的项目,以保持其布局在不同屏幕上保持一致。
添加这一行在你的Container
:
width: MediaQuery.of(context).size.width,
Run Code Online (Sandbox Code Playgroud)
这将使您Swiper
填满屏幕width
,您可以将其修改为任何其他值以适合您的设计。
归档时间: |
|
查看次数: |
4669 次 |
最近记录: |