Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Dart 颤振:在构建ui时执行大小错误?_Dart_Flutter - Fatal编程技术网

Dart 颤振:在构建ui时执行大小错误?

Dart 颤振:在构建ui时执行大小错误?,dart,flutter,Dart,Flutter,在这段代码中,我试图输出一个pickercard列表,该列表使用添加的属性重新定义容器。在尝试这样做的时候。我遇到了这个错误,我试图通过将所有小部件插入到具有指定高度的容器中来指定高度,但遗憾的是,它没有起作用。任何帮助都将不胜感激。 查找所附代码 class PackageScreenState extends State<PackageScreen> { @override Widget build(BuildContext context) { return n

在这段代码中,我试图输出一个pickercard列表,该列表使用添加的属性重新定义容器。在尝试这样做的时候。我遇到了这个错误,我试图通过将所有小部件插入到具有指定高度的容器中来指定高度,但遗憾的是,它没有起作用。任何帮助都将不胜感激。 查找所附代码

class PackageScreenState extends State<PackageScreen> {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
        appBar: new AppBar(
          title: new Text("Choose package"),
        ),
        body: 
          StreamBuilder<UnmodifiableListView<Package>>(
              stream: subscriptionBloc.package,
              builder:
                  (_, AsyncSnapshot<UnmodifiableListView<Package>> packages) {
                if (packages.hasData == true) {
                  return ListView.builder(
                           shrinkWrap: true,
                      itemCount: packages.data.length,
                      itemBuilder: ((BuildContext context, int index) {
                        return PackageContainer(
                          titleText: packages.data[index].name,
                          price: packages.data[index].price,
                          subtitleText: packages.data[index].description,
                          onPressed: null,
                        );
                      }));
                } //if end statment
                else {
                  return CircularProgressIndicator();
                }

        ));
  }
}
class packagescrenstate扩展状态{
@凌驾
小部件构建(构建上下文){
归还新脚手架(
appBar:新的appBar(
标题:新文本(“选择包”),
),
正文:
StreamBuilder(
流:subscriptionBloc.package,
建设者:
(389;,异步快照包){
if(packages.hasData==true){
返回ListView.builder(
收缩膜:对,
itemCount:packages.data.length,
itemBuilder:((BuildContext上下文,int索引){
返回包装容器(
titleText:packages.data[index].name,
价格:包。数据[索引]。价格,
字幕文本:packages.data[索引]。说明,
onPressed:null,
);
}));
}//如果结束状态
否则{
返回循环ProgressIndicator();
}
));
}
}


包覆面提取
属性添加到您的
ListView.builder

  shrinkWrap: true

哦,它工作了。然而,我期待着该页面可以滚动,但结果是静态的,我把它放在listview中,以便能够滚动,但没有任何更改。检查编辑的代码嗯,我不明白,但你已经有了一个可滚动的listview。你添加了:收缩包装吗?为什么添加:listview(子项:[作为ListView.builder的容器?将ListView.builder包装在容器或大小固定的框中,高度大小为:MediaQuery.of(上下文).size.height,然后删除包覆面提取:是的,你说得对。我不必再在listview中进行包覆面提取。我只直接将streambuilder放入正文中。检查编辑的代码。非常感谢您的帮助