File tree Expand file tree Collapse file tree 2 files changed +14
-2
lines changed Expand file tree Collapse file tree 2 files changed +14
-2
lines changed Original file line number Diff line number Diff line change 1+ import 'dart:io' ;
2+
3+ import 'package:easy_refresh/easy_refresh.dart' ;
14import 'package:fluent_ui/fluent_ui.dart' as fluent;
25import 'package:flutter/material.dart' ;
36import 'package:flutter_i18n/flutter_i18n.dart' ;
@@ -31,6 +34,7 @@ class _SearchExtensionPageState extends fluent.State<SearchExtensionPage> {
3134 final List <ExtensionListItem > _data = [];
3235 int _page = 1 ;
3336 bool _isLoding = true ;
37+ final EasyRefreshController _easyRefreshController = EasyRefreshController ();
3438
3539 Future <void > _onRefresh () async {
3640 setState (() {
@@ -75,7 +79,11 @@ class _SearchExtensionPageState extends fluent.State<SearchExtensionPage> {
7579
7680 _onSearch (String keyWord) {
7781 _keyWord = keyWord;
78- _onRefresh ();
82+ if (Platform .isAndroid) {
83+ _easyRefreshController.callRefresh ();
84+ } else {
85+ _onRefresh ();
86+ }
7987 }
8088
8189 Widget _buildAndroid (BuildContext context) {
@@ -117,6 +125,7 @@ class _SearchExtensionPageState extends fluent.State<SearchExtensionPage> {
117125 body: InfiniteScroller (
118126 onRefresh: _onRefresh,
119127 onLoad: _onLoad,
128+ easyRefreshController: _easyRefreshController,
120129 child: LayoutBuilder (
121130 builder: (context, constraints) => GridView .builder (
122131 padding: const EdgeInsets .symmetric (horizontal: 16 ),
Original file line number Diff line number Diff line change @@ -12,13 +12,15 @@ class InfiniteScroller extends StatefulWidget {
1212 required this .onLoad,
1313 this .refreshOnStart = true ,
1414 this .enableInfiniteScroll = true ,
15+ this .easyRefreshController,
1516 }) : super (key: key);
1617
1718 final Widget child;
1819 final Future <void > Function () onRefresh;
1920 final Future <void > Function () onLoad;
2021 final bool refreshOnStart;
2122 final bool enableInfiniteScroll;
23+ final EasyRefreshController ? easyRefreshController;
2224
2325 @override
2426 State <InfiniteScroller > createState () => _InfiniteScrollerState ();
@@ -36,7 +38,7 @@ class _InfiniteScrollerState extends State<InfiniteScroller> {
3638 }
3739
3840 _onRefresh () async {
39- await Future .delayed (const Duration (milliseconds: 100 ));
41+ await Future .delayed (const Duration (milliseconds: 1 ));
4042 widget.onRefresh ();
4143 }
4244
@@ -57,6 +59,7 @@ class _InfiniteScrollerState extends State<InfiniteScroller> {
5759
5860 Widget _buildAndroid (BuildContext context) {
5961 return EasyRefresh (
62+ controller: widget.easyRefreshController,
6063 onRefresh: widget.onRefresh,
6164 header: const ClassicHeader (
6265 processedDuration: Duration .zero,
You can’t perform that action at this time.
0 commit comments