Flutter使用多個Expanded組合報錯

2021-09-23 20:52:03 字數 2260 閱讀 1014

如果你使用了多個expanded進行繪製頁面,那麼可能會報錯。expanded這個東西真的做的不友好。如下**

row(

children: [

column(

children: [

//豎線

expanded(

child: container(),

),expanded(

child: container(),)],

),//

expanded(

child: container(),)],

)

可能會出現如下日誌。

i/flutter ( 4696): when the exception was thrown, this was the stack:

i/flutter ( 4696): #0      renderflex.performlayout.(package:flutter/src/rendering/flex.dart:691:11)

i/flutter ( 4696): #1      renderflex.performlayout (package:flutter/src/rendering/flex.dart:712:10)

i/flutter ( 4696): #2      renderobject.layout (package:flutter/src/rendering/object.dart:1632:7)

i/flutter ( 4696): #3      renderflex.performlayout (package:flutter/src/rendering/flex.dart:738:15)

i/flutter ( 4696): #4      renderobject.layout (package:flutter/src/rendering/object.dart:1632:7)

i/flutter ( 4696): #5      renderflex.performlayout (package:flutter/src/rendering/flex.dart:738:15)

i/flutter ( 4696): #6      renderobject.layout (package:flutter/src/rendering/object.dart:1632:7)

i/flutter ( 4696): #7      renderflex.performlayout (package:flutter/src/rendering/flex.dart:738:15)

i/flutter ( 4696): #8      renderobject.layout (package:flutter/src/rendering/object.dart:1632:7)

i/flutter ( 4696): #9      renderflex.performlayout (package:flutter/src/rendering/flex.dart:738:15)

..............................

那麼怎麼解決?

使用intrinsicheightintrinsicwidth+container進行裝飾包裝。

至於選哪個根據你的業務來決定。intrinsicheight是豎直方向有關的,intrinsicwidth橫方向有關的。

**例項:

intrinsicheight(

child: container(

child: row(

children: [

column(

children: [

//豎線

expanded(

child: container(),

),expanded(

child: container(),)],

),//

expanded(

child: container(),)],

),),

)

是不是糾結了一天是不是看了後解決了?

如果你高興了,請打個賞吧。

Flutter 動畫使用

效果預覽 旋轉動畫 透明度變換動畫 在android中,可以通過view.animate 對檢視進行動畫處理,那在flutter中怎樣才能對widget進行處理 在flutter中,可以通過動畫庫給widget新增動畫。在android中,您可以通過xml建立動畫或在檢視上呼叫.animate 在f...

Flutter 動畫使用

旋轉動畫 透明度變換動畫 在android中,可以通過view.animate 對檢視進行動畫處理,那在flutter中怎樣才能對widget進行處理 在flutter中,可以通過動畫庫給widget新增動畫。在android中,您可以通過xml建立動畫或在檢視上呼叫.animate 在flutte...

150多個Flutter元件詳細介紹送給你

迷茫是什麼,迷茫就是大事幹不了,小事不想幹,能力配不上慾望,才華配不上夢想。我在flutter未正式發布之前就開始學習了,因為fuchsia系統,隨著5g的發展,物聯網將會迎來爆發式的增長,目前的市場上還沒有一款物聯網系統佔據主導地位,雖然google沒有說fuchsia是為物聯網而生,但你理解fu...