如何在颤振中在容器内制作固定大小的容器

Abh*_*hek 2 dart flutter flutter-layout

我正在尝试制作应用程序的布局,其中主容器将具有设备高度的 45%,并且主容器内的容器应具有固定大小。

我编写了以下代码,但内部容器将完整高度作为其父(主)容器。

class TestContainer extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return Container(
          width: 50,
          height:MediaQuery.of(context).size.height * 0.45,
          color: Colors.red
          child:Container(
          width: 50,
          height: 100,
          color: Colors.green
          )
        );
      }
    }
Run Code Online (Sandbox Code Playgroud)

知道我做错了什么吗?

voi*_*oid 6

通过用小部件包装它来修复它Center

class TestContainer extends StatelessWidget {
      @override
      Widget build(BuildContext context) {
        return Container(
          width: 50,
          height:MediaQuery.of(context).size.height * 0.45,
          color: Colors.red,
          // wrap with a center widget
          child:Center(
            child: Container(
            width: 50,
            height: 100,
            color: Colors.green
            ),
          )
        );
      }
    }
Run Code Online (Sandbox Code Playgroud)

将内容器放置在底部中心

class TestContainer extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Container(
      width: 50,
      height: MediaQuery.of(context).size.height * 0.45,
      color: Colors.red,
      // wrap with a align widget
      child: Align(
        // set the alignment property
        alignment: Alignment.bottomCenter,
        child: Container(
          width: 50,
          height: 100,
          color: Colors.green,
        ),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

在此处阅读有关 Flutter 中布局约束的更多信息:https://flutter.dev/docs/development/ui/layout/constraints