SwiftUI 中的表单背景颜色不会改变

时间:2020-12-31 02:20:47

标签: ios swift swiftui

我正在尝试在 SwiftUI 中为表单设置背景颜色,但它不起作用。

struct CustomFormView: View {
    @State private var name: String = ""
    @State private var desc: String = ""
    var body: some View {
        VStack {
            NavigationView {
                Form {
                    TextField("Name", text: $name)
                    TextField("Notes: (Optional)", text: $desc)
                        .padding(.bottom, 100)
                }
                .navigationBarTitle("New Session")
            }
            .background(Color.red)
        }
        .background(Color.red)
    }
}

struct CustomFormView_Previews: PreviewProvider {
    static var previews: some View {
        CustomFormView()
    }
}

它总是白色的。 :|

我使用的是 Xcode 14.3

有人可以帮我解决吗?

2 个答案:

答案 0 :(得分:1)

例如,您可以使用 UITableView.appearance().backgroundColor = .redForm 的背景颜色设置为红色。这可以进入视图的 init,但是这会影响every ListForm

或者,您可以使用 SwiftUI-Introspect 通过执行以下操作来自定义单个:

.introspectTableView { $0.backgroundColor = .red }

答案 1 :(得分:0)

谢谢。 我在表格上试过这个。它部分起作用。我仍然有一个问题,表单有一些白色覆盖

resourceTimeGridWeekDay: {
              type: "resourceTimeGridWeek",
              buttonText: "weekdays",
              hiddenDays: [0,6],
              visibleRange: function(currentDate) {
                let start = new Date(currentDate.valueOf())
                let end = new Date(currentDate.valueOf())

                start.setDate(start.getDate() - start.getDay())
                if (currentDate.getDay() === 5) {
                  end.setDate(start.getDate())
                } else {
                  end.setDate(start.getDate() + 6)
                }
                // document.getElementById("test").innerHTML = JSON.stringify(end)

                return {start: start, end: end}
              }
            }

enter image description here

相关问题