flutter监听优化一个小思路!!防止重复刷新状态

2019-08-21  本文已影响0人  长江悠悠向东流

直接进入真题,上图上代码!
很多时候我们都要用到flutter的列表监听,这里就举一个列子,appr上面的title
我们想要实现的是下拉到一定距离显示价格,上滑到原位置隐藏价格

直接上优化后的代码
我们多添加一个bool类型的值

  bool _show=true;
@override
  void initState() {
    // TODO: implement initState
    super.initState();
    scrollController.addListener((){
      if(scrollController.position.pixels>=60&&_show)   
        setState(() {
          print('显示');
         _show=false;
          price='89';
        });
      else if(scrollController.position.pixels<=60&&!_show){
        setState(() {
          print('隐藏');
         _show=true;
          price='';
        });
      }
      else{

      }

    });
  }

这样就实现了滑动距离 0-60只重设一次状态,60到无穷也只重设一次状态

image.png
image.png

从上往下一直拉,打印的结果


image.png
上一篇下一篇

猜你喜欢

热点阅读