1 RefreshIndicator
① 監聽 ScrollNotification,獲取下拉偏移量
② 構建 Stack 組件。將下拉溢出後頂部的動畫和列表疊放在一起。
③ 自定義 Physics 組件,使得滾動的列表偏移到頂部動畫的下方(重寫 ScrollPhysics 的 applyPhysicsToUserOffset 方法即可)。
2 EasyRefresh
依賴自定義 BouncingScrollPhysics 組件,實現重寫其 applyPhysicsToUserOffset 方法,監聽偏移量的變更。
3 flukit 的 pull_refresh
通過 Listener 的 onPointerUp、onPointerDown 觸發相應操作的監聽。