Tho*_*aun 5 xcode ios swift swiftui
我想要一个按钮,当点击它时切换一个布尔值并更改按钮的文本。通过使用打印语句,我可以确认按钮正确切换 bool 值,但它没有更改按钮的文本。
我已经尝试将 bool 默认值手动设置为 false,这确实会更改文本,但是在切换时我仍然无法更改它。
Button(action: {
Variables.userTriangle.cupShooting = 7
Variables.userTriangle.triangle[6].toggleStatus()
}) {
if !Variables.userTriangle.triangle[6].status {
Text("x")
.font(.largeTitle)
} else {
Text("7")
.font(.largeTitle)
}
}
Run Code Online (Sandbox Code Playgroud)
当它点击按钮时,我希望它通过更改布尔值来更改文本的值。我计划有多个这样的按钮。
Qui*_*inn 16
我相信该视图仅构建一次,因此它不会检查是否每次更改条件...
你可以做的是让你的文本成为一个@Statevar 然后当你改变它时它会自动在视图中更新。
@State var someText = "x"
...
Button(action: {
Variables.userTriangle.cupShooting = 7
Variables.userTriangle.triangle[6].toggleStatus()
if (Variables.userTriangle.triangle[6].status) {
self.someText = "7"
} else {
self.someText = "x"
}
}) {
Text(self.someText).font(.largeTitle)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4679 次 |
| 最近记录: |