如何在单个 ScrollView 上的 SwiftUI 中禁用垂直弹跳

Lua*_*lan 5 modal-dialog scrollview bounce swiftui

我有一个来自屏幕底部的带有滚动视图的半模态视图,当没有足够的内容可以滚动时,我希望内部滚动视图上的拖动手势应用于模态并展开或折叠它。我尝试使用:

init() {
   UIScrollView.appearance().bounces = false
}
Run Code Online (Sandbox Code Playgroud)

它工作正常,但这会禁用我的应用程序中所有滚动视图的弹跳效果。有没有办法将其应用于单个 ScrollView 或至少单个 View?

小智 0

您可以将其添加到 ViewModifier 中:

struct SomeModifier: ViewModifier {
    init() {
      UIScrollView.appearance().bounces = false
    }

    func body(content: Content) -> some View {
        return content
    }
}

ScrollView {
  Text("Some scroll view")
}.modifier(SomeModifier()

Run Code Online (Sandbox Code Playgroud)

  • 这具有相同的效果,应用程序中的所有 ScrollView 都停止弹跳 (7认同)