我的代碼通過我的Xcode項目中的「太快」選項運行時出現問題(在我的iPhone上測試時)。我有兩個按鈕,可以控制從常規[默認選項]到更亮或最多更改一定量的牛奶。當我觸摸將牛奶量改爲光照時,它可以正常工作。然而,從這個選項中,當我點擊向上箭頭將牛奶量改回常規時,它會變爲常規,然後變爲額外的,因爲代碼正在如此快速地執行。這有點難以通過措辭來解釋,但我試圖弄清楚如何在每次迭代時停止流程,而不會一直跳到流水線本身的末端。我會在下面發佈我的代碼,但請告訴我,如果您需要更多解釋以幫助解決問題!Xcode運行「太快」
@IBAction func changeMilkAmountRight(sender: UIButton) {
if milkAmount == 1 {
milkAmount = 2
milkAmountLabel.text = String("regular")
updateLabels()
}
if milkAmount == 2 {
milkAmount = 3
milkAmountLabel.text = String("extra")
updateLabels()
}
}
@IBAction func changeMilkAmountLeft(sender: UIButton) {
if milkAmount == 3 {
milkAmount = 2
milkAmountLabel.text = String("regular")
updateLabels()
}
if milkAmount == 2 {
milkAmount = 1
milkAmountLabel.text = String("light")
updateLabels()
}
}
看起來像代碼將總是執行兩個如果塊。在「左」情況下,它將更改3和2,然後執行將2更改爲1.如果將每個函數中的第二個「if」更改爲「else if」,則它只會執行一次。 –
@BrianWalker是正確的。方法中的兩個'if'塊都將始終執行。如果你使用調試器來遍歷代碼,你會自己看到這個。 –
這似乎工作非常好!感謝您的建議! – Seth