2016-03-04 83 views
0

我是一名初學者,我正在構建一個RPN計算器。如果位於顯示屏中的數字已經有一個點,我已禁用點鍵(不再可點擊)。如何在按下回車鍵後再次啓用它?因爲現在,即使我在顯示屏上輸入另一個數字,它也會保持禁用狀態。所以如果我點擊第一位數字的點鍵,我不能爲我的操作的第二位數字添加一個點。Swift啓用點 - 讓點再次點擊

我有一個點添加到一個數字代碼:

@IBAction func floatingPoint(sender: UIButton) { 
    labelDisplay.text = labelDisplay.text! + "." 
    sender.enabled = false //not clickable if the digit as already a point 
} 

我有一個代碼,請輸入:

var enterPressed = false 
@IBAction func Enter() { 
    userHasStartedTyping = false 
    self.calcEngine!.operandStack.append(displayValue) 
    print("Operand Stack on engine = \(self.calcEngine!.operandStack)") 
} 

我對操作的代碼:

@IBAction func operation(sender: UIButton) { 
    let operation = sender.currentTitle! 
    if userHasStartedTyping { 
     Enter() 
    } 
    self.displayValue = (self.calcEngine?.operate(operation))! 
    Enter() // 


} 

回答

0

您必須在班級中添加@IBOutlet,以便您可以從您公司的各個部分訪問此按鈕德,而不僅僅是行動方法。例如,將其添加到視圖控制器的頂部:

@IBOutlet var pointButton:UIButton! 

請記住將按鈕連接到故事板上的此插座。

因此,例如,您可以重新啓用Enter()方法中的點按鈕。像這樣:

pointButton:UIButton.enabled = true 
+0

非常感謝你現在的作品:) – kepi

相關問題