如何根据颤动中屏幕的分数高度在堆栈内定位列?

Tre*_*ree 8 flutter flutter-layout

我想将Column放置在 内部Stack,以便它占据屏幕的 60%,并且它位于屏幕底部。

////////
|
|
|40%
////////
|column
|
|
|
|60%
////////
Run Code Online (Sandbox Code Playgroud)

目前我正在尝试使用Positioned和使用MediaQuery但它不起作用。

      new Positioned(
        top: MediaQuery.of(context).size.height * .4,
        height: MediaQuery.of(context).size.height * .6,

        child: new Column(
Run Code Online (Sandbox Code Playgroud)

我知道有一些分数小部件应该会有所帮助。

Ste*_*hen 13

您可以使用 Column 小部件(它是 Flex 小部件的子类)和具有 flex 属性的 Expanded 子部件来做到这一点。

Stack(
  fit: StackFit.expand,
  children: [
    Column(
      children: <Widget>[
        Expanded(
            flex: 4,
            child: Container() 
            ),
        Expanded(
          flex: 6,
          child: Column(
            children: <Widget>[],
          ),
        )
      ],
    )
  ],
)
Run Code Online (Sandbox Code Playgroud)