ScrollKit
0.6.0

Scrollkitは、オフセットトラッキングや、引き下げたときに伸びて変換するヘッダービューなど、強力なスクロール機能を追加するSwiftui SDKです。

Scrollkitはすべての主要なAppleプラットフォームで動作し、使いやすいように設計されています。現在、OSの後方互換性の理由で新しいScrollView APIを使用しませんが、最終的にはそうします。
Scrollkitは、Swift Package Managerでインストールできます。
https://github.com/danielsaidi/ScrollKit.git
scrollkitには、スクロールを検出できるScrollViewWithOffsetTrackingビューがあります。
ScrollViewWithOffsetTracking { offset in
print ( offset )
} content : {
// Add your scroll content here, e.g. a `LazyVStack`
} Scrollkitには、伸縮性のある、粘着性のあるヘッダーを簡単にセットアップできるようにするScrollViewWithStickyHeaderもあります。
struct MyView : View {
@ State
private var offset = CGPoint . zero
@ State
private var visibleRatio = CGFloat . zero
func handleOffset ( _ scrollOffset : CGPoint , visibleHeaderRatio : CGFloat ) {
self . offset = scrollOffset
self . visibleRatio = visibleHeaderRatio
}
func header ( ) -> some View {
ZStack ( alignment : . bottomLeading ) {
Color . blue
Color . yellow . opacity ( visibleRatio ) // Fades in
}
}
var body : some View {
ScrollViewWithStickyHeader (
header : header ,
headerHeight : 250 ,
headerMinHeight : 150 ,
onScroll : handleOffset
) {
// Add your scroll content here, e.g. a `LazyVStack`
}
}
}詳細については、Getting Guideをご覧ください。
オンラインドキュメントには、より多くの情報、記事、コードの例などがあります。
デモアプリを使用すると、ライブラリを探索できます。試してみるには、 Demoプロジェクトを開いて実行してください。
私のオープンソースプロジェクトをサポートするために、GitHubスポンサーで私をスポンサーしたり、有料のサポートに手を差し伸べることができます。
あなたのサポートにより、私はこれらのプロジェクトにより多くの作業を加え、それらを最高のものにすることができます。
質問がある場合や貢献したい場合は、お気軽にご連絡ください。
ScrollkitはMITライセンスの下で利用できます。詳細については、ライセンスファイルを参照してください。