From cfe9dd5c2ee7ecd72639600d19ad19f4bd688e6a Mon Sep 17 00:00:00 2001 From: anlicheng <244108715@qq.com> Date: Fri, 11 Apr 2025 14:26:18 +0800 Subject: [PATCH] fix view --- dimensionhub/Views/Index/IndexMainView.swift | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/dimensionhub/Views/Index/IndexMainView.swift b/dimensionhub/Views/Index/IndexMainView.swift index 9d1ae3e..fc8f554 100644 --- a/dimensionhub/Views/Index/IndexMainView.swift +++ b/dimensionhub/Views/Index/IndexMainView.swift @@ -84,18 +84,19 @@ struct IndexMainView: View { .frame(width: 370) .coordinateSpace(name: "indexScrollView") .onScrollPhaseChange { oldPhase, newPhase in - print("scroll old: \(oldPhase), new: \(newPhase), footer-offset: \(footerOffset)") guard !footerRefreshing && !showDateNavPopover else { return } + print("scroll old: \(oldPhase), new: \(newPhase), footer-offset: \(footerOffset)") // 滑动停止的时候,检测是否到达了底部 let height = Int(UIScreen.main.bounds.height) - if newPhase == .idle && self.footerOffset < height + 500 { + let distance = height - footerOffset + if newPhase == .idle && (distance >= 0 && distance < 50) { self.footerRefreshing = true Task { await self.indexModel.loadMoreUpdateDramas(userId: self.userId, mode: .next) - await MainActor.run { + DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) { self.footerRefreshing = false } }