包含 ScrollView 的 SwiftUI Sheet 当 ScrollView 到达顶部时向下滚动

问题描述 投票:0回答:1

嘿,我正在制作 SwiftUI 底部工作表,并想将 ScrollView 放在底部工作表视图中。问题是当我滚动滚动视图时,我不希望底部工作表做出反应。但是每当我使用在底部表单中实现的滚动视图滚动到顶部时,底部表单就会开始关闭。

如果有人可以帮助我专门滚动滚动视图并且不影响底部工作表,请帮忙!

提前谢谢您。

代码如下所示


struct ExampleView: View {
    @State private var showSheet = false
    
    var body: some View {
        NavigationView {
            VStack(spacing: 20) {
                Button("Show Bottom Sheet") {
                    showSheet.toggle()
                }
                .buttonStyle(.borderedProminent)
                .sheet(isPresented: $showSheet) {
                    /// Bottom Sheet which contains scrollview in it
                    BottomSheetView()
                        .presentationDetents([.medium])
                        .ignoresSafeArea()
                }
            }
        }
    }
}

我专门尝试过,同时选项,highPriorityGesture 但一切都不起作用

swift swiftui scrollview
1个回答
0
投票

.interactiveDismissEnabled()
应用于
BottomSheetView

BottomSheetView()
    .presentationDetents([.medium])
    .ignoresSafeArea()
    .interactiveDismissDisabled() // <- HERE

当然,您需要为用户提供另一种方式来关闭工作表。

© www.soinside.com 2019 - 2024. All rights reserved.