Current scroll offset inside a Flutter ListView, SliverList,etc

后端 未结 2 951
悲&欢浪女
悲&欢浪女 2021-01-04 06:46

How do I get the current scroll offset inside a Flutter ListView, SliverList, etc?

2条回答
  •  情书的邮戳
    2021-01-04 06:59

    For someone else, looking for code implementation, you can use ScrollController like this:

    ScrollController _scrollController;
    
    @override
    void initState() {
      super.initState();
      _scrollController = ScrollController()
        ..addListener(() {
          print("offset = ${_scrollController.offset}");
      });
    }
    
    @override
    Widget build(BuildContext context) {
      return ListView(
        controller: _scrollController, 
        children: [],
      );
    }
    
    @override
    void dispose() {
      _scrollController.dispose(); // it is a good practice to dispose the controller
      super.dispose();
    }
    

提交回复
热议问题