如何使用带有半径部分的swiftui设计表格
How to design forms using swiftui with sections having radius
我想使用 swiftui 设计一个如下所示的表单
https://66.media.tumblr.com/8674652bc73f2cf387e29f067c07adac/tumblr_inline_py9ypv0dxv1qjmlje_500.png
表格在图像中没有背景,部分的半径采用不同的背景颜色。
我试过设置表格的背景颜色,但不起作用。
关于如何使用 swiftui 设计表单的任何想法。
如果您指的是具有灰色背景的列表单元格的圆角,这是插入分组 table 视图样式的一部分,SwiftUI 当前不支持 - 目前仅支持 UIKit。
https://twitter.com/twostraws/status/1142838324123656192?lang=en
现在,您可以在 SwiftUI 中使用分组列表样式来创建较暗的背景,只是单元格不会像您的示例中那样被圆化。参见:https://www.hackingwithswift.com/quick-start/swiftui/how-to-make-a-grouped-list
List {
Section(header: Text("Examples")) {
Text("Row 1")
}
}.listStyle(GroupedListStyle())
可用于 iOS/iPadOS 14 on Xcode 12。您可以使用 Form 而不是 List 来获得这种外观。
struct FormView: View {
let destination = URL(string: "https://www.apple.com")!
var body: some View {
Form {
Section(header: Text("Section 1")) {
Link(destination: destination) {
Label("Terms and Conditions", systemImage: "doc")
}
Link(destination: destination) {
Label("Policy", systemImage: "doc.plaintext")
}
}
Section(header: Text("Section 2")) {
Link(destination: destination) {
Label("Change Password", systemImage: "lock")
}
Link(destination: destination) {
Label("Security", systemImage: "shield")
}
Link(destination: destination) {
Label("Privacy", systemImage: "doc")
}
}
}
}
}
我想使用 swiftui 设计一个如下所示的表单 https://66.media.tumblr.com/8674652bc73f2cf387e29f067c07adac/tumblr_inline_py9ypv0dxv1qjmlje_500.png
表格在图像中没有背景,部分的半径采用不同的背景颜色。
我试过设置表格的背景颜色,但不起作用。
关于如何使用 swiftui 设计表单的任何想法。
如果您指的是具有灰色背景的列表单元格的圆角,这是插入分组 table 视图样式的一部分,SwiftUI 当前不支持 - 目前仅支持 UIKit。 https://twitter.com/twostraws/status/1142838324123656192?lang=en
现在,您可以在 SwiftUI 中使用分组列表样式来创建较暗的背景,只是单元格不会像您的示例中那样被圆化。参见:https://www.hackingwithswift.com/quick-start/swiftui/how-to-make-a-grouped-list
List {
Section(header: Text("Examples")) {
Text("Row 1")
}
}.listStyle(GroupedListStyle())
可用于 iOS/iPadOS 14 on Xcode 12。您可以使用 Form 而不是 List 来获得这种外观。
struct FormView: View {
let destination = URL(string: "https://www.apple.com")!
var body: some View {
Form {
Section(header: Text("Section 1")) {
Link(destination: destination) {
Label("Terms and Conditions", systemImage: "doc")
}
Link(destination: destination) {
Label("Policy", systemImage: "doc.plaintext")
}
}
Section(header: Text("Section 2")) {
Link(destination: destination) {
Label("Change Password", systemImage: "lock")
}
Link(destination: destination) {
Label("Security", systemImage: "shield")
}
Link(destination: destination) {
Label("Privacy", systemImage: "doc")
}
}
}
}
}