非常简单,如果我声明一个按钮,如:
Button("buttonLabel") {
//How do I access the titleLabel.text, in this case "buttonLabel" inside the button's action?
}
旁注:如果可以添加任何内容来实现上下文相关,我可以,但是我觉得必须有一些超级简单的方法来访问标签...
您可以通过将其声明为ContentView
成员的外部变量来访问它:
struct ContentView: View {
let buttonLabel = "buttonLabel"
var body: some View {
Button(buttonLabel) {
print("Pressed \(buttonLabel)")
}
}
}
如果只想访问标签的值,则可以在视图中将其设置为属性。如果要在操作中进行修改,则需要使用@State
包装器对其进行标记,如下所示。
struct YourView: View {
@State let label = "Tap Me"
var body: some View {
Button(label) {
self.label = "Tapped!"
}
}
}