如何消除SwiftUI Form中Section上方的空格?

Sor*_*ica 14 ios swift swiftui

我想消除第Section一个上方的空间Form

在此处输入图片说明

 var body: some View {
        VStack {
            Text("Text 1")
            Form {
                Section {
                    Text("Text 2")
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

我试图将 Section 的 header 的 frame 设置为 0,但它不起作用

Sor*_*ica 9

解决方案是使用 aSection和 anEmptyView()并将您想要的视图放在此标题的顶部Section

 var body: some View {
        VStack {
            Text("Text 1")
            Form {
                Section(header: VStack(alignment: .center, spacing: 0) {
                    Text("Text 2").padding(.all, 16)
                        .frame(width: UIScreen.main.bounds.width, alignment: .leading)
                        .background(Color.white)
                }) {
                    EmptyView()
                }.padding([.top], -6)
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

  • 添加负内边距也会改变可点击区域。所以不是一个好的解决方案。 (5认同)
  • 这是一个相当hacky的解决方案...... (2认同)