diff --git a/yana/Views/FeedListView.swift b/yana/Views/FeedListView.swift index 91e35b9..24685aa 100644 --- a/yana/Views/FeedListView.swift +++ b/yana/Views/FeedListView.swift @@ -171,6 +171,7 @@ struct MomentsListView: View { struct FeedListContentView: View { let store: StoreOf @Binding var previewItem: PreviewItem? + @Binding var previewCurrentIndex: Int var body: some View { WithViewStore(self.store, observe: { $0 }) { viewStore in @@ -186,6 +187,7 @@ struct FeedListContentView: View { hasMore: viewStore.hasMore, isLoadingMore: viewStore.isLoadingMore, onImageTap: { images, tappedIndex in + previewCurrentIndex = tappedIndex previewItem = PreviewItem(images: images, index: tappedIndex) }, onMomentTap: { moment in @@ -211,6 +213,7 @@ struct FeedListView: View { let store: StoreOf // 新增:图片预览状态 @State private var previewItem: PreviewItem? = nil + @State private var previewCurrentIndex: Int = 0 var body: some View { WithViewStore(self.store, observe: { $0 }) { viewStore in @@ -241,7 +244,8 @@ struct FeedListView: View { // 动态内容列表 FeedListContentView( store: store, - previewItem: $previewItem + previewItem: $previewItem, + previewCurrentIndex: $previewCurrentIndex ) Spacer() @@ -275,7 +279,7 @@ struct FeedListView: View { } // 新增:图片预览弹窗 .fullScreenCover(item: $previewItem) { item in - ImagePreviewPager(images: item.images, currentIndex: .constant(item.index)) { + ImagePreviewPager(images: item.images, currentIndex: $previewCurrentIndex) { previewItem = nil } } diff --git a/yana/Views/MainView.swift b/yana/Views/MainView.swift index f00685b..0db35d2 100644 --- a/yana/Views/MainView.swift +++ b/yana/Views/MainView.swift @@ -101,6 +101,7 @@ struct InternalMainView: View { )) } .frame(maxWidth: .infinity, maxHeight: .infinity, alignment: .bottom) + .padding(.bottom, 100) .ignoresSafeArea(.keyboard, edges: .bottom) // 添加API Loading和错误处理视图 diff --git a/yana/Views/MeView.swift b/yana/Views/MeView.swift index 7a42616..010b90b 100644 --- a/yana/Views/MeView.swift +++ b/yana/Views/MeView.swift @@ -5,6 +5,7 @@ struct MeView: View { let store: StoreOf // 新增:图片预览状态 @State private var previewItem: PreviewItem? = nil + @State private var previewCurrentIndex: Int = 0 var body: some View { WithViewStore(self.store, observe: { $0 }) { viewStore in @@ -55,7 +56,7 @@ struct MeView: View { } // 新增:图片预览弹窗 .fullScreenCover(item: $previewItem) { item in - ImagePreviewPager(images: item.images, currentIndex: .constant(item.index)) { + ImagePreviewPager(images: item.images, currentIndex: $previewCurrentIndex) { previewItem = nil } } @@ -139,6 +140,7 @@ struct MeView: View { allMoments: viewStore.moments, currentIndex: index, onImageTap: { images, tappedIndex in + previewCurrentIndex = tappedIndex previewItem = PreviewItem(images: images, index: tappedIndex) }, onLikeTap: { _, _, _, _ in