如何根据内容自动调整绒卡的高度

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

在项目即时通讯中,使用了颤振卡内的图像和文本,但是卡返回固定的高度。然后我也尝试仅使用具有空值的卡,但它仍返回固定高度。我该怎么做才能使卡的高度随内容自动调整。

@override小部件build(BuildContext context){最终标题=“食品食谱”;返回MaterialApp(标题:标题,家:脚手架(appBar:AppBar(标题:文字(标题),)正文:GridView.builder(itemCount:_listViewData.length,gridDelegate:SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount:2),itemBuilder :(上下文,索引){退货卡(边距:const EdgeInsets.all(10.0),子:列(crossAxisAlignment:CrossAxisAlignment.start,儿童:[AspectRatio(宽高比:18.0 / 13.0,子:Image.network(_listViewDataImage [index],适合:BoxFit.fill,))填充(填充:EdgeInsets.fromLTRB(16.0,12.0,16.0,8.0),子:列(crossAxisAlignment:CrossAxisAlignment.start,儿童:[文本(_listViewData [index],textAlign:TextAlign.center,)],))],));}),));}

The image link

gridview flutter flutter-layout
1个回答
0
投票

您想将您的卡包裹在Column中,因为内部Column占据了整个高度

 Column(children: <Widget>[
      Card(
        margin: const EdgeInsets.all(10.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: [
            AspectRatio(
              aspectRatio: 18.0 / 13.0,
              child: Image.network(
               "https://i.stack.imgur.com/mDkkT.png",
                fit: BoxFit.fill,
              ),
            ),
            Padding(
              padding: EdgeInsets.fromLTRB(16.0, 12.0, 16.0, 8.0),
              child: Column(
                crossAxisAlignment: CrossAxisAlignment.start,
                children: [
                  Text(
                    "Demo",
                    textAlign: TextAlign.center,
                  ),
                ],
              ),
            ),
          ],
        ),
      )
])
© www.soinside.com 2019 - 2024. All rights reserved.