SuperScrollView

这个包添加了 SuperScrollView,一个滚动视图,它提供了 scrollOffsetscrollSizeisScrolling,它还带来了 ScrollViewProxy,以防您需要它。

要求

.iOS(.v14),

.macOS(.v12),

.macCatalyst(.v14),

安装

dependencies: [
  .package(url: "https://github.com/AlvaroSanzRodrigo/SuperScrollView")
]

用法

这个 SuperScrollView 使用绑定来为您提供更新的数据

    @State private var scrollOffset: CGPoint = .zero
    @State private var scrollSize: CGSize = .zero
    @State private var isScrolling: Bool = false
    
    var body: some View {
        VStack {
            Text("Offset: \(scrollOffset.y)")
            Text("Size Width: \(scrollSize.width)")
            Text("Size Height: \(scrollSize.height)")
            Text("Is scrolling: \(isScrolling.description)")
            HStack {
                SuperScrollView(offset: $scrollOffset, size: $scrollSize, isScrolling: $isScrolling) { scrollViewProxy in
                    ForEach(0..<100) { index in
                        Text("This is row \(index)")
                    }
                }
            }
        }
        .padding()
    }

依赖项

这个库使用了来自 fatbobman/IsScrollingIsScrolling

许可证

该库在 MIT 许可证下发布。有关详细信息,请参阅 LICENSE