zoukankan      html  css  js  c++  java
  • flutter 置顶 ListView

    本文有参考,链接找不到了

    1.定义controller

    final ScrollController _scrollController = new ScrollController();

    2.在初始化中监听滚动

      @override
      void initState() {
        super.initState();
        
    
    
        _scrollController.addListener(() {
          print(_scrollController.offset); //打印滚动位置
          print("打印滚动位置"); //打印滚动位置
          if (_scrollController.offset < 100 && showToTopBtn) {
            setState(() {
              showToTopBtn = false;
            });
          } else if (_scrollController.offset >= 100 && showToTopBtn == false) {
            setState(() {
              showToTopBtn = true;
            });
          }
        });
        
      }

    3.注销/卸载滚动

      @override
      dispose(){
        super.dispose();
        _scrollController.dispose(); // 卸载
       
      }

    4.在 ListView里面带上controller

    child: ListView(
            controller: _scrollController,

    5.定义

    bool showToTopBtn = false; //是否显示“返回到顶部”按钮

    6.置顶的按钮

       floatingActionButton: !showToTopBtn
                ? null
                : FloatingActionButton(
                child: Icon(Icons.arrow_upward),
                onPressed: () {
                  //返回到顶部时执行动画
                  _scrollController.animateTo(.0, duration: Duration(milliseconds: 200), curve: Curves.ease);
                }),
  • 相关阅读:
    nodejs安装以及配置
    java第三周学习总结
    java第二周学习总结
    java第一周学习总结
    调查问卷
    2016.2.19 学习总结
    第一周学习总结
    第一周学习总结
    假期马原学习计划
    20145335郝昊《java程序设计》第2次实验报告
  • 原文地址:https://www.cnblogs.com/lude1994/p/14134689.html
Copyright © 2011-2022 走看看