自己在写项目练手,遇到了布局的疑惑,详细看下面

来源:2-1 Android开发者如何快速上手Flutter开发

香饽饽0

2019-09-13

图片描述

Widget _buildRankItemSongList(BuildContext context, int index) {
    Map<int, ModelSong> songMap = _rankList[index].songList.asMap();
    
    return Container(
      padding: EdgeInsets.all(20),
      child: Column(
        mainAxisAlignment: MainAxisAlignment.spaceAround,
        crossAxisAlignment: CrossAxisAlignment.start,
        children: songMap.keys.map((index) {
          return Text(
            '${index + 1} ${songMap[index].songname}-${songMap[index].singername}',
            style: Theme.of(context).textTheme.display2,
            overflow: TextOverflow.ellipsis,
          );
        }).toList(),
      ),
    );
  }

Text 并不会占据 Column 100% 的宽度,导致溢出。
改如何解决呢?

ps:并不想套一个Container 设置一个固定宽度,而是真正意义上占据父容器100%空间。

写回答

1回答

CrazyCodeBoy

2019-09-16

试下Expanded与FractionallySizedBox组件,可参考http://coding.imooc.com/learn/questiondetail/126033.html


0
1
香饽饽0
非常感谢!
2019-09-16
共1条回复

Flutter从入门到进阶 实战携程网App 一网打尽核心技术

解锁Flutter开发新姿势,,系统掌握Flutter开发核心技术。

4788 学习 · 3275 问题

查看课程