【问题标题】:How set the position of a FloatingActionButton for a ListView in flutter?如何在颤动中为 ListView 设置 FloatingActionButton 的位置?
【发布时间】:2020-09-22 16:42:09
【问题描述】:

我正在寻找一种解决方案来使用 ListView 在 StatelessWidget 中设置 FAB 的位置。我有一个带有列的小部件,其中包含两个子项(ListView 和 FAB)。 第一个问题是FAB的立场,第二个问题是专栏的背景。第二列隐藏了 ListView 的按钮。

如何将 FAB 悬停在 ListView 上?

class ListView extends StatelessWidget {
  final List<Bouquet> bouquets;

  ListView({@required this.bouquets});

  final ScrollController _controller = new ScrollController();

  @override
  Widget build(BuildContext context) {
    return Column(
      children: [
        Expanded(
            child: ListView(
          children: getChildren(),
          padding: new EdgeInsets.all(0.0),
          controller: _controller,
        )),
        Container(
          color: Colors.red,
          child: Row(children: [
            Expanded(
                child: FloatingActionButton(
              child: Icon(Icons.arrow_upward),
              onPressed: () => _controller.animateTo(0,
                  duration: Duration(milliseconds: 500),
                  curve: Curves.easeInOut),
              mini: true,
            ))
          ]),
        )
      ],
    );
  }

  List<Widget> getChildren() {}
}

【问题讨论】:

    标签: listview flutter floating-action-button


    【解决方案1】:

    使用Stack 小部件,您可以将小部件放在小部件上。我的建议:

    @override
      Widget build(BuildContext context) {
        return Stack(
          alignment: Alignment.bottomRight,
          children: [
            ListView(
              children: getChildren(),
              padding: new EdgeInsets.all(0.0),
              controller: _controller,
            ),
            FloatingActionButton(
              child: Icon(Icons.arrow_upward),
              onPressed: () => _controller.animateTo(0,
              duration: Duration(milliseconds: 500),
              curve: Curves.easeInOut),
              mini: true,
            )
          ],
        );
      }
    

    【讨论】:

    • 非常感谢。这就是解决方案。
    猜你喜欢
    • 1970-01-01
    • 2020-12-08
    • 2014-02-17
    • 2015-08-13
    • 1970-01-01
    • 2022-08-18
    • 2019-06-28
    • 2021-04-09
    • 2017-05-14
    相关资源
    最近更新 更多