我在 SwiftUI 中有以下视图,并且该按钮有问题,因为如果我填写条件中提到的两个文本字段,则该按钮不会启用。
import SwiftUI
struct SettingsView: View {
@Environment(\.modelContext) private var context
@State private var stagione = Calendar.current.component(.year, from: Date())
@State private var miaSquadra = ""
@State private var categoria = ""
var body: some View {
NavigationStack {
GroupBox("Stagione") {
Form {
TextField("Stagione:", value: $stagione, formatter: NumberFormatter())
.frame(width: 150)
TextField("Categoria:", text: $categoria)
.frame(width: 400)
TextField("Mia squadra:", value: $miaSquadra, formatter: NumberFormatter())
.frame(width: 400)
Button("Salva") {
let nuovaStagione = Stagione(idStagione: stagione, categoriaStagione: categoria, miaSquadra: miaSquadra)
context.insert(nuovaStagione)
}
.frame(maxWidth: .infinity, alignment: .trailing)
.buttonStyle(.borderedProminent)
.disabled(categoria.isEmpty||miaSquadra.isEmpty)
}
}
.padding()
GroupBox("Squadre") {
}
}
.navigationTitle("Impostazioni")
}
}
#Preview {
SettingsView()
.environmentObject(NavigationStateManager())
}
我也尝试过只在其中添加一个条件,但效果不佳。
我做错了什么?
谢谢, A.
第二个文本字段中的格式化程序