@@ -2,8 +2,8 @@ import SwiftUI
22import SwiftUIIntrospect
33
44struct ScrollViewShowcase : View {
5- @State var firstScrollViewFound : Bool = false
6- @State var secondScrollViewFound : Bool = false
5+ @State var receiverScrollViewFound : Bool = false
6+ @State var ancestorScrollViewFound : Bool = false
77
88 var body : some View {
99 VStack ( spacing: 40 ) {
@@ -23,23 +23,18 @@ struct ScrollViewShowcase: View {
2323 . padding ( . horizontal, 12 )
2424 . font ( . system( . subheadline, design: . monospaced) )
2525 }
26- . background ( Color ( . cyan) )
26+ . background {
27+ if receiverScrollViewFound {
28+ Color ( . cyan)
29+ }
30+ }
2731 #if os(iOS) || os(tvOS) || os(visionOS)
2832 . introspect(
2933 . scrollView,
3034 on: . iOS( . v13, . v14, . v15, . v16, . v17, . v18, . v26) , . tvOS( . v13, . v14, . v15, . v16, . v17, . v18, . v26) , . visionOS( . v1, . v2, . v26)
31- ) { scrollView in
32- scrollView. layer. backgroundColor = UIColor . cyan. cgColor
33- scrollView. layer. cornerRadius = 12
34- scrollView. clipsToBounds = true
35- // scrollView.flashScrollIndicators()
36- scrollView. bounces = false
35+ ) { _ in
36+ receiverScrollViewFound = true
3737 }
38- // .modifier {
39- // if #available(iOS 16, tvOS 16, *) {
40- // $0.scroll
41- // }
42- // }
4338 #elseif os(macOS)
4439 . introspect( . scrollView, on: . macOS( . v10_15, . v11, . v12, . v13, . v14, . v15, . v26) ) { scrollView in
4540 scrollView. drawsBackground = true
@@ -59,8 +54,8 @@ struct ScrollViewShowcase: View {
5954 . scrollView,
6055 on: . iOS( . v13, . v14, . v15, . v16, . v17, . v18, . v26) , . tvOS( . v13, . v14, . v15, . v16, . v17, . v18, . v26) , . visionOS( . v1, . v2, . v26) ,
6156 scope: . ancestor
62- ) { scrollView in
63- scrollView . layer . backgroundColor = UIColor . cyan . cgColor
57+ ) { _ in
58+ ancestorScrollViewFound = true
6459 }
6560 #elseif os(macOS)
6661 . introspect( . scrollView, on: . macOS( . v10_15, . v11, . v12, . v13, . v14, . v15, . v26) , scope: . ancestor) { scrollView in
@@ -69,6 +64,11 @@ struct ScrollViewShowcase: View {
6964 }
7065 #endif
7166 }
67+ . background {
68+ if ancestorScrollViewFound {
69+ Color ( . cyan)
70+ }
71+ }
7272 }
7373 }
7474}
0 commit comments