SwiftUI:HStack,设置堆栈中两个 View 之间的自定义间距而不是 HStack 上的标准间距?

标签 swiftui hstack

我知道我可以像这样设置 HStack 中 View 之间的间距:

HStack(spacing: 10) { .. }

如果我在 HStack 中有 8 个 View ,有没有办法仅在堆栈中 8 个 View 的两个连续 View 之间将间距设置为 1 ,从而覆盖初始 HStack 间距设置在这种情况下10

我希望堆栈中的所有 View 相距 10,但是,我希望其中两个 View 彼此相距 1。

我知道我可以放置另一个包含两个 View 的 HStack 并将子堆栈的间距设置为 1。我想知道是否还有其他更好的方法。

最佳答案

也许可以使用填充来代替?但是“我知道我可以放置另一个包含两个 View 的 HStack,并将子堆栈的间距设置为 1”可能是最好的方法。

struct ContentView: View {
    var body: some View {
        HStack(spacing: 0) {
            ForEach(0..<10) { index in
                Rectangle()
                    .fill(Color.green)
                    .frame(width: 40, height: 40)
                    .padding(.horizontal, index == 0 || index == 1 ? 1 : 10)
            }
        }
    }
}

First 2 have 1 spacing, rest have 10

关于SwiftUI:HStack,设置堆栈中两个 View 之间的自定义间距而不是 HStack 上的标准间距?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68549364/

相关文章:

ios - 简单的 SwiftUI 模式呈现并通过 @StateObject 关闭

video - ffmpeg:我如何hstack 2个视频并在视频区域外显示水印

text - SwiftUI 位置文本右下角?

scrollview - 使用 SwiftUI 加载更多功能

SwiftUI 阻止 Divider 在 HStack 中垂直扩展

ios - NavigationView 和 NavigationLink 在转换后不删除 View

swift - 如何在 SwiftUI 中为 View 之间的过渡设置动画?

swiftui - 将 SwiftUI ColorPicker 限制为仅在亮/暗模式下工作的颜色

ios - SwiftUI 自定义 View 的 ViewBuilder 不会在子类 ObservedObject 更新时重新渲染/更新

picker - SwiftUI - 在 HStack 中并排放置两个选择器不会调整选择器的大小