fix index view
This commit is contained in:
parent
5b14d559bf
commit
6dc1c3c6eb
@ -13,9 +13,6 @@ struct IndexMainView: View {
|
|||||||
@AppStorage("userId") private var userId: String = Utils.defaultUserId()
|
@AppStorage("userId") private var userId: String = Utils.defaultUserId()
|
||||||
|
|
||||||
@State var indexModel = IndexModel()
|
@State var indexModel = IndexModel()
|
||||||
@State var isMoreLoading: Bool = false
|
|
||||||
// 前向刷新
|
|
||||||
@State var isPrevLoading: Bool = false
|
|
||||||
|
|
||||||
// 提示信息
|
// 提示信息
|
||||||
@State var showPrompt: Bool = false
|
@State var showPrompt: Bool = false
|
||||||
@ -58,13 +55,20 @@ struct IndexMainView: View {
|
|||||||
.background(Color(hex: "#F2F2F2"), ignoresSafeAreaEdges: .top)
|
.background(Color(hex: "#F2F2F2"), ignoresSafeAreaEdges: .top)
|
||||||
|
|
||||||
ScrollView(.vertical, showsIndicators: false) {
|
ScrollView(.vertical, showsIndicators: false) {
|
||||||
|
// 下拉刷新
|
||||||
RefreshHeader(refreshing: $headerRefreshing, action: {
|
RefreshHeader(refreshing: $headerRefreshing, action: {
|
||||||
print("call me head headerRefreshing")
|
guard !self.showDateNavPopover else {
|
||||||
}) { progress in
|
return
|
||||||
print("progress is: \(progress)")
|
}
|
||||||
|
|
||||||
return ProgressView()
|
Task {
|
||||||
|
// 上拉刷新功能
|
||||||
|
self.headerRefreshing = true
|
||||||
|
await self.indexModel.loadMoreUpdateDramas(userId: self.userId, mode: .prev)
|
||||||
|
self.headerRefreshing = false
|
||||||
|
}
|
||||||
|
}) { progress in
|
||||||
|
ProgressView()
|
||||||
}
|
}
|
||||||
|
|
||||||
// 基于日期的更新列表
|
// 基于日期的更新列表
|
||||||
@ -78,26 +82,12 @@ struct IndexMainView: View {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Rectangle()
|
// 上滑刷新
|
||||||
// .frame(height: 0)
|
|
||||||
// .background(GeometryReader { geometry in
|
|
||||||
// Color.clear.onChange(of: geometry.frame(in: .global).minY) {_, offset in
|
|
||||||
// let frame = geometry.frame(in: .global)
|
|
||||||
// let screenBounds = UIScreen.main.bounds
|
|
||||||
// let contextFrame = geometry.frame(in: .named("indexScrollView"))
|
|
||||||
//
|
|
||||||
// if screenBounds.height - frame.minY > 50 && contextFrame.minY > 0 && !isMoreLoading {
|
|
||||||
// Task {
|
|
||||||
// self.isMoreLoading = true
|
|
||||||
// await self.indexModel.loadMoreUpdateDramas(userId: self.userId, mode: .next)
|
|
||||||
// self.isMoreLoading = false
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
|
|
||||||
RefreshFooter(refreshing: $footerRefreshing, action: {
|
RefreshFooter(refreshing: $footerRefreshing, action: {
|
||||||
print("call me here $footerRefreshing")
|
guard !self.showDateNavPopover else {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
Task {
|
Task {
|
||||||
self.footerRefreshing = true
|
self.footerRefreshing = true
|
||||||
await self.indexModel.loadMoreUpdateDramas(userId: self.userId, mode: .next)
|
await self.indexModel.loadMoreUpdateDramas(userId: self.userId, mode: .next)
|
||||||
@ -108,24 +98,10 @@ struct IndexMainView: View {
|
|||||||
}
|
}
|
||||||
.noMore(noMore)
|
.noMore(noMore)
|
||||||
.preload(offset: 50)
|
.preload(offset: 50)
|
||||||
|
|
||||||
if self.isMoreLoading {
|
|
||||||
ProgressView()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
.enableRefresh()
|
.enableRefresh()
|
||||||
.frame(width: 370)
|
.frame(width: 370)
|
||||||
.coordinateSpace(name: "indexScrollView")
|
.coordinateSpace(name: "indexScrollView")
|
||||||
// .refreshable {
|
|
||||||
// guard !self.isPrevLoading && !self.showDateNavPopover else {
|
|
||||||
// return
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// // 上拉刷新功能
|
|
||||||
// self.isPrevLoading = true
|
|
||||||
// await self.indexModel.loadMoreUpdateDramas(userId: self.userId, mode: .prev)
|
|
||||||
// self.isPrevLoading = false
|
|
||||||
// }
|
|
||||||
.overlay(alignment: .topTrailing) {
|
.overlay(alignment: .topTrailing) {
|
||||||
HStack(alignment: .center) {
|
HStack(alignment: .center) {
|
||||||
NavigationLink {
|
NavigationLink {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user