在Flutter中使用水平ListView构建API

22 浏览
0 Comments

在Flutter中使用水平ListView构建API

如何创建一个水平的ListView,其中的数据来自于Dart对象类,即API。\n以下是代码:\nreturn MaterialApp(\n home: Scaffold(\n appBar: AppBar(\n title: Text(\"练习\"),\n ),\n // child: Text(\"数据\")\n body:Container(\n child: ListView.builder(\n scrollDirection: Axis.horizontal,\n itemCount: l1.length,\n itemBuilder: (context , index){\n return ListTile(\n title: Image.network(l1[index]),\n subtitle: Text(l2[index]),\n );\n\n我遇到了以下错误:\nRenderBox没有布局:RenderPointerListener#784b4 relayoutBoundary = up8 NEEDS-PAINT NEEDS-COMPOSITING-BITS-UPDATE\n\'package:flutter/src/rendering/box.dart\':\nFailed assertion: line 1694 pos 12: \'hasSize\'\n

0
0 Comments

在Flutter中使用ListView.builder构建横向列表时遇到问题,问题的原因是ListTile需要指定宽度大小。为了解决这个问题,可以通过设置SizedBox的width属性来指定宽度大小。

以下是一个示例代码,演示了如何解决这个问题:

body: ListView.builder(

scrollDirection: Axis.horizontal,

itemCount: [1,2,3].length,

itemBuilder: (context, index) {

return SizedBox(

height: 200,

width: 500, // <---- 必须指定大小

child: ListTile(

subtitle: Text("${[index]}"),

),

);

}

)

以上代码中,我们通过将SizedBox的width属性设置为500来指定宽度大小,从而解决了横向列表的问题。

0
0 Comments

问题:在Flutter中使用ListView.builder构建水平列表时遇到问题。

原因:列表视图应该被包裹在一个有高度的容器中,给容器添加高度可能会解决这个问题。

解决方法:

body: Container(

height: 100,

child: ListView.builder(

scrollDirection: Axis.horizontal,

// 其他代码

),

),

然而,这个解决方法并不起作用。

0