实现下拉刷新
- flutter中,已经给出了实现,咱们只需要给出回调即可。
- 很多解释都在注释中,请不要忽略。
- 如果你想要直接看到全部代码,请拉到最后。
import 'dart:async';
import 'package:dio/dio.dart';
import 'package:flutter/material.dart';
import 'package:flutter_demo/base/view.dart';
import 'package:flutter_demo/common/my_flutter_toast/MyToast.dart';
import 'package:flutter_demo/common/my_flutter_toast/ToastType.dart';
import 'package:flutter_demo/view/news/NewsItem.dart';
import 'Model.dart';
class NewsPage extends StatefulWidget {
@override
_NewsPageState createState() => _NewsPageState();
}
class _NewsPageState extends State<NewsPage> {
List _goodsList = [];
int _currentPage = 1;
int _pageSize = 15;
//数据是否全部加载完毕
bool _isOver = false;
@override
void initState() {
// TODO: implement initState
super.initState();
this._initData();
}
@override
void dispose() {
// TODO: implement dispose
super.dispose();
}
@override
Widget build(BuildContext context) {
return Scaffold(
// 封装的工具方法,如果使用请修改为正常写法
appBar: getAppBar('News Center'),
body: RefreshIndicator(
onRefresh: () async {
// 这里写下拉刷新后执行的代码
print(1);
},
child: ListView.builder(
itemBuilder: _builder,
itemCount: this._goodsList.length,
)),
);
}
Widget _builder(BuildContext context, int index) {
return NewsItem(Goods(
this._goodsList[index]['title'],
this._goodsList[inde