我如何剪辑/掩码HStack内容行为像一个ScrollView内容显示在HStack内?



我有一个自定义TabView (Snap Carousel),我滚动内容和捕捉TabView内容。内容基本上是一个HStack,宽度是TabView的x倍,其中x也是页面数。我得到了所需的滚动行为,但当我剪辑MenuTabView时,我失去了可见区域外的内容,在滚动时它是空的。

HStack(spacing : 0) {
Image("image1")
.aspectRatio(2.8, contentMode: .fit)
.frame(width: proxy.size.width)

Image("image2")
.aspectRatio(2.8, contentMode: .fit)
.frame(width: proxy.size.width)
}
.frame(maxWidth: proxy.size.width, alignment: .leading)
.clipped()

代理是几何代理。

struct MenuTabView<Content: View> : View {
var body: some View {
GeometryReader { proxy in
ZStack {
content()
.offset(x: (CGFloat(index) * -proxy.size.width) + self.offset)
.gesture(
DragGesture()
........
}

}}

第二个图像是第二个页面,当我使用。clipped()剪辑时,它滚动但不可见。如何创建类似于ScrollView的行为

尝试移动线条.frame (maxWidth: proxy.size。宽度,对齐方式:.leading).clipped ()在。offset操作符

之后

最新更新