Flutter 如何将视图置于列表视图之上?

Flutter 如何将视图置于列表视图之上?,flutter,dart,Flutter,Dart,我有一个listview,它被平均分为两部分(作为背景)如何在上面放置视图(100*100 w*h)?(此框应居中对齐并位于根的顶部) 这是我的密码- @override Widget build(BuildContext context) { return Scaffold( body: ListView( children: <Widget>[ Container( w

我有一个listview,它被平均分为两部分(作为背景)如何在上面放置视图(100*100 w*h)?(此框应居中对齐并位于根的顶部)

这是我的密码-

  @override
    Widget build(BuildContext context) {
      return Scaffold(
        body: ListView(
          children: <Widget>[
            Container(
              width: ((context.findRenderObject() as RenderBox).size.width),
              height: ((context.findRenderObject() as RenderBox).size.height)/2,
              color: darkGreen,
            ),
          //  SizedBox(width: 10,),
            Container(
              width: ((context.findRenderObject() as RenderBox).size.width),
              height: ((context.findRenderObject() as RenderBox).size.height)/2,
              color: Colors.grey,
            ),
          ],
        ),
      );
    }
  }
@覆盖
小部件构建(构建上下文){
返回脚手架(
正文:ListView(
儿童:[
容器(
宽度:((作为RenderBox的context.findenderobject()).size.width),
高度:((context.findenderobject()作为RenderBox.size.height)/2,
颜色:深绿色,
),
//尺寸箱(宽度:10,),
容器(
宽度:((作为RenderBox的context.findenderobject()).size.width),
高度:((context.findenderobject()作为RenderBox.size.height)/2,
颜色:颜色。灰色,
),
],
),
);
}
}

首先,您不需要这一行:

((context.findenderObject()作为RenderBox.size.width)
您可以将其替换为:

double.infinity
它将采用父
小部件
允许的最大宽度

至于您的问题,您可以将
列表视图
包装在
堆栈中

容器(
宽度:double.infinity,
高度:双无限,
子:堆栈(
儿童:[
列表视图(
儿童:[
容器(
宽度:double.infinity,
高度:
((context.findenderObject()作为RenderBox.size.height)/2,
颜色:深绿色,
),
//尺寸箱(宽度:10,),
容器(
宽度:double.infinity,
高度:
((context.findenderObject()作为RenderBox.size.height)/2,
颜色:颜色。灰色,
),
],
),
//将所需的小部件放在此处
],
),
),