Flutter-如何在AnimatedBuilder中制作ListView?

时间:2018-12-28 03:10:28

标签: dart flutter

我正在练习Youtube上的动画文本教程,我想在我的版式中实现它。在我的布局中,我有一个背景图片。.所以我正在使用 Stack ,以便我的动画文本位于背景图片上方,并且必须可滚动。

没有ListView,它可以完美工作。但是,当我将Stack包裹在ListView中时...所有小部件都消失了,它是空白的。请帮助我

这是代码:

Widget build(BuildContext context) {
 final double width = MediaQuery.of(context).size.width;

return AnimatedBuilder(
    animation: animationController,
    builder: (BuildContext context, Widget child) {
      return Scaffold(
          appBar: new AppBar(....),

          //BODY

          body: new ListView {
           children: <Widget>[
            new Stack(
              children: <Widget>[
               new AspectRatio(
                aspectRatio: 100 / 100,
                child: new Container(
                  decoration: BoxDecoration(
                      image: DecorationImage(
                          image: AssetImage('assets/dashboard.png'),
                          alignment: Alignment.topCenter)),
                ),
              ),
                new Transform(
                  transform: Matrix4.translationValues(
                    animation.value * width,
                    0.0,
                    0.0,
                  ),
                    child: ListView{
                      children:<Widget>[
                        new Container(
                         child: Column(
                          children: <Widget>[
                            Row(
                            children: <Widget>[
                              Text(
                                'Have you subscribe',
                                style: TextStyle(
                                    color: Colors.black,
                                    fontSize: 28.0,
                                    fontFamily: 'Sego'),
                              )
                            ],
                          ),
                        ],
                      ),
                    ),
                  ],
                ),
              ),
            ],
          ));
    });

} }

1 个答案:

答案 0 :(得分:0)

天哪,这实际上只是一个简单的错误。我的错误是使ListView进入ListView内部,这将引发异常错误。我只需要删除堆栈中的ListView。.

   Stack(
      //(.....)
     child: ListView{
         children:<Widget>[