当我按下按钮时,我希望一张卡片图像变为另一张卡片图像。这是我当前的代码:
import SwiftUI
var leftCard = "green_back"
var rightCard = "blue_back"
func dealCards() {
leftCard = "1C"
print("deal")
}
struct GameView: View {
var body: some View {
VStack {
HStack(alignment: .center, spacing: 20) {
Image(leftCard)
.resizable()
.aspectRatio(contentMode: .fit)
Image(rightCard)
.resizable()
.aspectRatio(contentMode: .fit)
}
.padding(.all, 25)
Button(action: dealCards) {
Text("Deal Cards")
.fontWeight(.bold)
.font(.title)
.padding(10)
.background(Color.blue)
.foregroundColor(.white)
.padding(10)
.border(Color.blue, width: 5)
}
}
}
}
struct GameView_Previews: PreviewProvider {
static var previews: some View {
GameView()
}
}
当我按下按钮时,此代码会打印“交易”,但不会更改图像。
我正在使用 MacOS Big Sur beta 3 和 Xcode 12 beta 2。
编辑:我只需将我的变量移动到 GameView 结构中并@State
为它们添加一个修饰符。感谢所有回答的人。:D