SwiftUI offset items in ScrollView under another view
SwiftUI offset items in ScrollView under another view
我的应用程序顶部有一个 VStack
,其中包含一些内容,然后是底部的 ScrollView
,这些视图用 Divider
分隔。有什么方法可以偏移 scrollView,使其开始略微隐藏在 Divider
和顶视图下方?
这是我想要的示例图像:
数字在 ScrollView
中,顶部内容只是 Color.white
在这个例子中。
如果我简单地应用 y offset
,我会得到:
数字垂直向上移动,但没有“隐藏”在下方。
有没有一种简单的方法可以得到“卷起”的结果?我确定我可以使用 ZStack 或其他东西,但这看起来工作量很大,尤其是因为我不知道顶部内容有多大。
示例代码:
struct ContentView: View {
var body: some View {
VStack(spacing: 0) {
Color.white.frame(height: 100)
Divider()
ScrollView {
ForEach(0..<20) { number in
Text("\(number)")
}
}
.offset(y: -8)
}
}
}
我假设您只需要填充滚动视图,例如
ScrollView {
ForEach(0..<20) { number in
Text("\(number)")
}
}
.padding(.top, -8) // << here !!
.clipped()
我的应用程序顶部有一个 VStack
,其中包含一些内容,然后是底部的 ScrollView
,这些视图用 Divider
分隔。有什么方法可以偏移 scrollView,使其开始略微隐藏在 Divider
和顶视图下方?
这是我想要的示例图像:
数字在 ScrollView
中,顶部内容只是 Color.white
在这个例子中。
如果我简单地应用 y offset
,我会得到:
数字垂直向上移动,但没有“隐藏”在下方。
有没有一种简单的方法可以得到“卷起”的结果?我确定我可以使用 ZStack 或其他东西,但这看起来工作量很大,尤其是因为我不知道顶部内容有多大。
示例代码:
struct ContentView: View {
var body: some View {
VStack(spacing: 0) {
Color.white.frame(height: 100)
Divider()
ScrollView {
ForEach(0..<20) { number in
Text("\(number)")
}
}
.offset(y: -8)
}
}
}
我假设您只需要填充滚动视图,例如
ScrollView {
ForEach(0..<20) { number in
Text("\(number)")
}
}
.padding(.top, -8) // << here !!
.clipped()