数组还是那个数组, 只不过这里由静态类型改成了非静态类型.
改成了有状态的 widget
用 RefreshIndicator 包裹 ListView. 这样 ListView 就有了下拉刷新的能力.
下拉, 松开的的手的时候会执行刷新, 也就是 onRefresh 这个方法. 这个方法要求我们传递一个必须带有 Future 返回值的方法
所以这里我们定义了带有 Future 返回值的方法. 这个方法里面如果我们不想返回值的内容, 就在 Future 的泛型设置为 Null. 也就是 Future<Null>
下拉刷新的方法, 延迟 2 秒钟, 修改状态用 setState 对数组进行取反. 取反后转换为 List
刷新后, 数组取反, 拉萨排第一
上拉加载更多.
这里构建了一个 ScrollController 的实例
然后在这里增加了 Listener 回调.
maxScrollExtent 最大可滚动位置. 就是列表到达了底部. 这个时候就是我们触发加载更多的逻辑. 所以调用了_loadData 方法
把原来的数组复制一份新的
数组又加载了一份.
来源: http://www.bubuko.com/infodetail-3382596.html