我得到以下错误:

即. .,抛出了另一个异常:ParentDataWidget的错误使用。 在移动屏幕上显示错误。

 @override
  Widget build(BuildContext context) {

    return MaterialApp(
      title: widget.title,
      theme: ThemeData.light().copyWith(
        platform: _platform ?? Theme.of(context).platform,
      ),
      home: DefaultTabController(
        length: categoryNames.length,
        child: Scaffold(
        appBar: AppBar(
          title: Text(widget.title),
                 ),
        body: SafeArea(
            child: Column(
              children: <Widget>[
                Chewie(
                  controller: _chewieController,
                ),
                TabBar(
                  labelColor:Colors.black,
                  tabs: categoryNames,
                ),
                Expanded(
                  child: TabBarView(
                    children: [
                      ImageList()
                    ],
                  ),
                )
                /*TabBarView(
                  children: [
                    Icon(Icons.directions_car),
                    Icon(Icons.directions_transit),
                    Icon(Icons.directions_bike),
                  ],
                )*/
              ],
            )
        ),
      ),
      ),
    );
  }

这是我的代码,请检查并让我知道问题。


当前回答

我删除了一个定位小部件,是在一个堆栈内的容器和问题“不正确使用ParentDataWidget”消失了。

其他回答

此解决方案仅在使用Position作为行或列的父元素时有效

在我的例子中,我在列中使用了定位。移除它就解决了问题!

Else

始终记住使用“行、列或Flex扩展”

在我的代码中没有扩展,所以我发现使用Spacer()也会导致这个错误,如果它是在一个列表视图内

我的问题在于Expand

          child: Expanded(
            child: SingleChildScrollView(
              scrollDirection: Axis.vertical,
              child: Column(
                children: getChildren(cubit.listPerformer, state),
              ),

删除Expand后,它可以正常工作。

在我的例子中,这是因为我在一个sizebox中封闭了一个Expanded,我只是在一行中封闭了Expanded,就是这样。

我删除了一个定位小部件,是在一个堆栈内的容器和问题“不正确使用ParentDataWidget”消失了。