[英]SwiftUI Change View Clicking Button
我是斯威夫特的新手。
我正在使用 SwiftUI 创建一个测验应用程序: https ://imgur.com/a/j6Ele2f
我想在按下正确的按钮(此处为 possibleAnswers[2])时更改问题和可能的答案。
struct ContentView: View {
@State var question = "Was ist ein Sonett?"
@State var possibleAnswers = [
"Eine Stichwaffe",
"Ein Musikinstrument",
"Eine Gedichtsform",
"Ein Pilz"
]
var body: some View {
Text(question)
.foregroundColor(CustomColor.myBlack)
.font(.title2)
ForEach(possibleAnswers.indices) { index in
Button(action: {
question = "Frage 2"
}) {
Text(possibleAnswers[index])
}
}
}
}
您需要有一系列问题、答案和正确答案。 当你到达最后一个问题时,你也必须定义一些东西(意思是当 i = questions_count - 1)
struct ContentView: View {
@State var i = 0 //counter
@State var question = [
"Was ist ein Sonett?",
"question 2",
"question 3"
]
let questions_count = 3 // number of questions
@State var possibleAnswers = [
[
"Eine Stichwaffe",
"Ein Musikinstrument",
"Eine Gedichtsform",
"Ein Pilz"
],
[
"a",
"b",
"c",
"d"
],
[
"a2",
"b2",
"c2",
"d2"
],
]
let correct_answears = [2,1,3]
var body: some View {
Text(question[i])
.foregroundColor(.red)
.font(.title2)
ForEach(0..<4) // 4 = number of answears
{ index in
Button(action: {
if i < questions_count - 1{
// condition of correct answear
if index == correct_answears[i] {
i = i+1
}
} else {
i = 0
}
}) {
Text(possibleAnswers[i][index])
}
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.