我正在使用Swift语言开发一个测验应用程序。当用户选择一个按钮,然后改变主意选择另一个按钮时,应用程序会考虑最初点击的按钮,而不是最后点击的按钮。我将单击的值存储在名为'selectedValue'的变量中。用户通过点击“下一个”按钮移动到下一个问题。
@IBAction func buttonClicked(_ sender: UIButton) {
if sender.tag == 0 {
selectedValue += 0
} else if sender.tag == 1 {
selectedValue += 1
} else if sender.tag == 2 {
selectedValue += 2
} else if sender.tag == 3 {
selectedValue += 3
}
}
@IBAction func nextButtonClicked(_ sender: Any) {
nextQuestion()
}
如何使用最后一次单击的值而不是最初单击的值?
1条答案
按热度按时间oaxa6hgo1#
因此,根据你对我评论的回答,我猜这是一个测验,用户回答多个问题,没有错误的答案,每个答案都有助于总分,最终得分估计用户的抑郁程度。
那么问题是,如果用户选择了一个答案,然后改变了主意,那么您就等于为同一个问题增加了
selectedValue
多次。第五个问题,
selectedValue
等于10。用户点击按钮tag == 2
,然后点击selectedValue == 12
。他改变主意,选择了tag == 3
的按钮,那么selectedValue
应该是13,但它是15。有很多方法可以解决这个问题,其中之一就是在每个问题之前记录下之前的
selectedValue
。您可以声明另一个变量,在我的示例中,previousValue
,来跟踪这个。然后: