在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()

        }) 

文本未显示。我该如何解决?

iCMS 回答:在Swift UI中单击按钮时如何显示一些文本?

您正试图在按钮的动作闭合内返回一个视图。此闭包仅指定要执行的操作,而不呈现任何视图。

我建议您浏览一下苹果公司的SwiftUI tutorial

这是您所要求的示例...

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()
    }
}
本文链接:https://www.f2er.com/2025357.html

大家都在问