Flutter 颤振:如何在一行中只设置两个元素,在新行中休息?

Flutter 颤振:如何在一行中只设置两个元素,在新行中休息?,flutter,dart,flutter-layout,Flutter,Dart,Flutter Layout,所以我尝试渲染一行中的元素列表,前提是只渲染行中的两个元素,其余元素渲染到新行中 下面是模拟 现在,我从api中获得的元素列表 下面是我的代码 Container _subjectwise() { return Container( margin: EdgeInsets.only(top: 10), child: Row( children: listofsubject != null && listofsubject.lengt

所以我尝试渲染一行中的元素列表,前提是只渲染行中的两个元素,其余元素渲染到新行中

下面是模拟

现在,我从api中获得的元素列表

下面是我的代码

Container _subjectwise() {
    return Container(
      margin: EdgeInsets.only(top: 10),
      child: Row(
        children: listofsubject != null && listofsubject.length > 0
            ? listofsubject.map((item) {
                return Flexible(
                  child: Card(
                    shape: RoundedRectangleBorder(
                      borderRadius: BorderRadius.circular(2.0),
                    ),
                    color: Colors.white,
                    elevation: 3,
                    child: Padding(
                      padding: new EdgeInsets.only(
                          top: 3, bottom: 3, left: 0, right: 0),
                      child: Row(
                        mainAxisAlignment: MainAxisAlignment.start,
                        children: <Widget>[
                          SizedBox(
                            width: 10,
                          ),
                          Image(
                              image: AssetImage("images/live.png"),
                              width: 35,
                              // height: 35,
                              fit: BoxFit.cover),
                          SizedBox(
                            width: 5,
                          ),
                          Expanded(
                            flex: 1,
                            child: ListTile(
                              dense: true,
                              contentPadding: EdgeInsets.only(right: 0),
                              title: Text(
                                'Mental Ability',
                                style: TextStyle(
                                    fontSize: 12, fontWeight: FontWeight.w600),
                              ),
                            ),
                          ),

                        ],
                      ),
                    ),
                  ),
                );
              }).toList()
            : [],
      ),
    );
  }
Container\u subjectwise(){
返回容器(
页边空白:仅限边集(前10页),
孩子:排(
子项:listofsubject!=null&&listofsubject.length>0
?主题图列表((项目){
回程灵活(
孩子:卡片(
形状:圆形矩形边框(
边界半径:边界半径。圆形(2.0),
),
颜色:颜色,白色,
标高:3,
孩子:填充(
填充:仅限新边设置(
顶部:3,底部:3,左侧:0,右侧:0),
孩子:排(
mainAxisAlignment:mainAxisAlignment.start,
儿童:[
大小盒子(
宽度:10,
),
形象(
图片:AssetImage(“images/live.png”),
宽度:35,
//身高:35,
安装:BoxFit.盖),
大小盒子(
宽度:5,
),
扩大(
弹性:1,
孩子:ListTile(
是的,
contentPadding:EdgeInsets.only(右:0),
标题:正文(
“心智能力”,
样式:TextStyle(
fontSize:12,fontWeight:fontWeight.w600),
),
),
),
],
),
),
),
);
})托利斯先生()
: [],
),
);
}
那么,是否有一个属性或某些东西限制了行中元素的数量


谢谢

您可以将
listofsubject
拆分为包含两个元素的列表,并将许多
和两个小部件放入
中,您可以使用
Wrap
小部件。因为您可以确定,它总是放在一行中的前两个元素。只需获取数组[0]和数组[1]项并将它们排成一行即可。。创建一个新列表
newArr=[用于(int i=2;iI意味着一行中只显示两个,而不仅仅是第一个two@GauravKumar您想在一行中添加2个元素,然后在下一行中添加下2个元素,依此类推?因此,基本上是一行中包含2个小部件的列表?您可以将
listofsubject
拆分为包含2个元素的列表,并将包含2个小部件的多个
放入
列中de>您可以使用
Wrap
小部件。因为您确定它总是放在一行中的前两个元素。只需将数组[0]和数组[1]项放在一行中。创建一个新列表
newArr=[for](int i=2;iI意味着一行中只显示两个,而不仅仅是第一个two@GauravKumar您想在一行中添加2个元素,然后在下一行中添加下2个元素,依此类推吗?因此,基本上一行中有2个小部件的列表?