swiftui - 在 Swift UI 中单击按钮时如何显示一些文本?
问题描述
当用户输入正确答案时,我有一个显示“正确”的功能。
func displayCorrectOrIncorrect() -> some View {
Group {
if correctAnswer == quiz.answer {
VStack {
Text("Correct")
}
} else {
VStack {
Text("Incorrect, correct answer is \(correctAnswer)")
}
}
}
}
这就是我所说的:
Button(action: {
self.displayCorrectOrIncorrect()
self.updateUI()
})
文字不显示。我怎样才能解决这个问题?
解决方案
您正试图在按钮的操作闭包内返回一个视图。此闭包仅指定要执行的操作,不呈现任何视图。
我建议阅读 Apple 的SwiftUI 教程。
这是你问的一个例子......
struct ContentView: View {
@State var correctAnswer: Bool = false
var body: some View {
VStack {
Group {
if correctAnswer {
Text("Correct!")
} else {
Text("Incorrect!")
}
}
Button("Button") {
correctAnswer.toggle()
}
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
推荐阅读
- google-cloud-platform - 我无法将 GCP autoML 模型导出到存储桶
- python - Python 访问 Azure DevOps 密码值
- couchbase - Couchbase Eventing Service 似乎处于滚动启动状态
- angular - 调整上传到 Google Firebase 的图片大小
- email - 使用mailto时“系统找不到指定的路径”:
- python - `basename` 参数未指定 - DJANGO REST 框架
- .net - RegisterSystemDirectories 和其他方法有什么区别
- java - 通信 tcp server c/client java
- python - 拆分整体文件 Django
- python - python - 如何使用python将带有功能的图标添加到MDToolBbar?