以前作的是TipCalculator,功能實在是太過簡單。
期間看了斯坦福大學教iOS10 Swift開發的公開課,正好有講到計算器的設計例子,因而就想着實現一個,正好iPad Pro上不知道爲何沒有原裝的計算器app,用本身開發的app豈不是很酷呢?git
@IBAction func SendDigit(_ sender: UIButton) { let digit = sender.currentTitle! print(digit + " is clicked") }
在聽課的過程當中,也弄明白了爲何要在text後面加一個!,由於button上面的值是optional的,button上的值多是empty的,而!就是爲了獲得它的值並傳給digit,表示默認爲非nil,直接解包(unwrap)進行處理。
不然就會出現 (optional)7 is clicked 的狀況。swift
好的,如今咱們已經成功實現button傳值了。app
@IBOutlet weak var showResult: UILabel! @IBAction func SendDigit(_ sender: UIButton) { let digit = sender.currentTitle! showResult.text! = digit }
這裏對showResult.text後添加!也是與上面同理測試
好了,如今運行,測試,能夠顯示了!設計
但是,每次只能顯示一個button的數字,那要輸兩位數以上該怎麼辦呢?code
那就,這樣?ip
let textCurrently = showResult.text! showResult.text! = textCurrently + digit
能夠輸入兩位數了!
可是,每次輸的時候,會把前面默認的0帶上,這樣顯然是不正確的。
因而,咱們就能夠想一種方法來讓程序判斷,用戶是否正在輸入。
設一bool 變量,初始設爲false,若是正在輸入,就讓 按的button傳的數字跟在Label上的數字後面。若是不是,就替換更新Label上的數字。開發
接下來,嘗試着添加特殊常數button,點擊button,即顯示該常數值內容。
原理很簡單,一樣是send digit。數學
--- 持續更新 ---it