OpenContainer Flutter:如何设置打开容器的大小,默认是全屏打开。

问题描述 投票:0回答:1

在最近的flutter版本中,出现了新的功能Open Container,下面是这段代码,如何设置openContainer的大小,closedbuilder是在其范围内接受和渲染,但open builder是取全屏大小。

OpenContainer(
            openElevation: 0,
            closedElevation: 0,
            closedColor: Colors.transparent,
            transitionType: ContainerTransitionType.fadeThrough,
            openBuilder: (BuildContext context, VoidCallback _) {
              return SizedBox( height:240, 
                        width:MediaQuery.of(context).size.width
                               child:SearchWidget());
            },
            closedBuilder:
                (BuildContext context, VoidCallback openContainer) {
              return Container(
                 height: 50
                 width: 50
                child: Column(
                  mainAxisAlignment: MainAxisAlignment.center,
                  children: <Widget>[
                    const Icon(Icons.search),
                    const Text('Search', style: TextStyle(fontSize: 12))
                  ],
                ),
flutter flutter-layout flutter-animation
1个回答
0
投票

OpenContainer--一个容器,当点击时,它可以成长为充满屏幕以显示新内容。类似于Hero widget。

你无法调整大小 openBuilder 方法中 OpenContainer 小部件。

因为它将你的小容器转换为一个完整的视图页面,如果你想在点击搜索按钮后获得一个较小尺寸的小部件,你应该使用 "小部件"。animatedBuilder 并制作自己的动画

© www.soinside.com 2019 - 2024. All rights reserved.