在 SwiftUI 中启用 ScrollView over scroll
Enable ScrollView over scroll in SwiftUI
我实现了一个包含两个水平滚动视图(使用ScrollView
s)的垂直滚动视图(使用List
)。 UI 目前看起来像这样:
这是我在上面编写的相关代码 UI:
NavigationView {
List {
VStack(alignment: .leading) {
CategoryRow(...)
CategoryRow(...)
Spacer()
}
.listRowInsets(EdgeInsets())
.navigationBarTitle(Text("Featured"))
}
}
在每个 CategoryRow
中,有一个 HStack
嵌入在 ScrollView
中。
在左右边缘引入填充时,我得到以下结果:
如您所见,由于填充,水平滚动视图被截断了。
问题
有没有办法让水平滚动视图越过边界滚动?
我正在寻找的结果是,当滚动偏移量为 0 时,滚动视图的左侧有填充,而当滚动一直向右时,右侧有填充。
在 UIKit 中,我通过设置集合视图的 contentOffset 来做到这一点...
将 padding
修饰符添加到 RowView 中的 HStack
.padding(.horizontal, 20)
我实现了一个包含两个水平滚动视图(使用ScrollView
s)的垂直滚动视图(使用List
)。 UI 目前看起来像这样:
这是我在上面编写的相关代码 UI:
NavigationView {
List {
VStack(alignment: .leading) {
CategoryRow(...)
CategoryRow(...)
Spacer()
}
.listRowInsets(EdgeInsets())
.navigationBarTitle(Text("Featured"))
}
}
在每个 CategoryRow
中,有一个 HStack
嵌入在 ScrollView
中。
在左右边缘引入填充时,我得到以下结果:
如您所见,由于填充,水平滚动视图被截断了。
问题
有没有办法让水平滚动视图越过边界滚动?
我正在寻找的结果是,当滚动偏移量为 0 时,滚动视图的左侧有填充,而当滚动一直向右时,右侧有填充。
在 UIKit 中,我通过设置集合视图的 contentOffset 来做到这一点...
将 padding
修饰符添加到 RowView 中的 HStack
.padding(.horizontal, 20)