如何根据卡片中的文字动态扩展CARD widget的高度大小?

问题描述 投票:0回答:1

所以,如果我把大量的文本在一个小组件卡中的文本将超过卡小组件,我不能再看到它的其余部分。

只有当我手动调整每个卡片的大小时,才会显示所有的文字。

是否可以根据卡片中的文字动态扩展CARD widget的高度大小?

例如,无论我放多少文字,卡片的高度都会扩展,以显示所有的文字。

这段代码。

    Widget _card(
      {Color primary = Colors.redAccent,
      String imgPath,
      String chipText1 = '',
      String chipText2 = '',
      Widget backWidget,
      Color chipColor = LightColor.orange,
      bool isPrimaryCard = false}) {
    return Container(          
        height: isPrimaryCard ? 500 : 500,
        width: isPrimaryCard ? width * .90 : width * .90,
        margin: EdgeInsets.symmetric(horizontal: 10, vertical: 20),
        decoration: BoxDecoration(
            color: primary.withAlpha(200),
            borderRadius: BorderRadius.all(Radius.circular(20)),
            boxShadow: <BoxShadow>[
              BoxShadow(
                  offset: Offset(0, 5),
                  blurRadius:
                      10, 
                  color: LightColor.lightpurple.withAlpha(20))
            ]),
        child: ClipRRect(
          borderRadius: BorderRadius.all(Radius.circular(20)),
          child: Container(
            child: Stack(
              children: <Widget>[
                backWidget,
                Positioned(                      
                    top: 20,
                    left: 10,
                    child: CircleAvatar(                         
                      backgroundColor: Colors.transparent,
                      backgroundImage: NetworkImage(imgPath),
                    )),
                Positioned(                      
                  top: 30,
                  left: 20,
                  child: _cardInfo(chipText1, chipText2,
                      LightColor.titleTextColor, chipColor,
                      isPrimaryCard: isPrimaryCard),
                )
              ],
            ),
          ),
        ));
  }
android-layout flutter dart flutter-layout flutter-widget
1个回答
0
投票

你可能想使用一个 ConstrainedBox. 它允许你设置一个最小的高度,但如果需要的话可以扩展 。

Card(
  child: ConstrainedBox(
    constraints: BoxConstraints(
      minHeight: 100,
    ),
    child: Text("")
  )
)
© www.soinside.com 2019 - 2024. All rights reserved.