提交 6d710fc1 authored 作者: 张国庆's avatar 张国庆

修改下拉加载

上级 696d769b
...@@ -2,6 +2,7 @@ import 'package:easy_refresh/easy_refresh.dart'; ...@@ -2,6 +2,7 @@ import 'package:easy_refresh/easy_refresh.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart'; import 'package:flutter_spinkit/flutter_spinkit.dart';
export 'package:easy_refresh/easy_refresh.dart'; export 'package:easy_refresh/easy_refresh.dart';
import 'package:flutter_clx_base/flutter_clx_base.dart';
class BaseListWidget extends StatefulWidget { class BaseListWidget extends StatefulWidget {
final RequestDataCallback requestData; final RequestDataCallback requestData;
...@@ -34,6 +35,12 @@ class _BaseListWidgetState extends State<BaseListWidget> { ...@@ -34,6 +35,12 @@ class _BaseListWidgetState extends State<BaseListWidget> {
final _MIProperties _headerProperties = _MIProperties( final _MIProperties _headerProperties = _MIProperties(
name: 'Header', name: 'Header',
); );
final _CIProperties _footerProperties = _CIProperties(
name: 'Footer',
alignment: MainAxisAlignment.start,
infinite: true,
);
final List<dynamic> _dataList = []; final List<dynamic> _dataList = [];
int _page = 1; int _page = 1;
int _count = 0; int _count = 0;
...@@ -146,8 +153,24 @@ class _BaseListWidgetState extends State<BaseListWidget> { ...@@ -146,8 +153,24 @@ class _BaseListWidgetState extends State<BaseListWidget> {
/// Build footer. /// Build footer.
Footer buildFooter() => Footer buildFooter() =>
widget.footer ?? widget.footer ??
const CupertinoFooter( ClassicFooter(
position: IndicatorPosition.locator, clamping: _footerProperties.clamping,
backgroundColor: _footerProperties.background
? Theme.of(context).colorScheme.surfaceVariant
: null,
mainAxisAlignment: _footerProperties.alignment,
showMessage: _footerProperties.message,
showText: _footerProperties.text,
infiniteOffset: _footerProperties.infinite ? 70 : null,
triggerWhenReach: _footerProperties.immediately,
dragText: 'Pull to load'.tr,
armedText: 'Release ready'.tr,
readyText: 'Loading...'.tr,
processingText: 'Loading...'.tr,
processedText: 'Succeeded'.tr,
noMoreText: 'No more'.tr,
failedText: 'Failed'.tr,
messageText: 'Last updated at %T'.tr,
); );
/// Check if there is no data. /// Check if there is no data.
...@@ -250,3 +273,21 @@ class _MIProperties { ...@@ -250,3 +273,21 @@ class _MIProperties {
required this.name, required this.name,
}); });
} }
class _CIProperties {
final String name;
bool disable = false;
bool clamping = false;
bool background = false;
MainAxisAlignment alignment;
bool message = true;
bool text = true;
bool infinite;
bool immediately = false;
_CIProperties({
required this.name,
required this.alignment,
required this.infinite,
});
}
...@@ -34,10 +34,10 @@ class _StateLayoutState extends State<StateLayout> { ...@@ -34,10 +34,10 @@ class _StateLayoutState extends State<StateLayout> {
} }
Widget _loadingWidget() { Widget _loadingWidget() {
return Column( return const Column(
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
children: const [ children: [
CupertinoActivityIndicator(radius: 16.0), CupertinoActivityIndicator(radius: 16.0),
], ],
); );
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论