折扣換算

此功能如下:

  1. 將原價乘以件數再計算折扣後的特價金額
  2. 畫面一出現立刻跳出數字鍵盤並將原價輸入框預設為第一輸入者becomeFirstResponder
  3. 點擊空白處將鍵盤收回
  4. 再次點擊時將textField裡面的數字清空
  5. 按下現省GO收回鍵盤並算出特價
  6. 只要任一格沒填數字特價就會顯示0元
  7. 限制不同的textField內的數字位數

畫面如下:

部分程式碼:

class DiscountViewController: UIViewController, UITextFieldDelegate {override func viewDidLoad() {super.viewDidLoad()originalPrice.becomeFirstResponder()}func textFieldDidBeginEditing(_ textField: UITextField) {textField.text = ""}override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {self.view.endEditing(true)}func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {guard let text = textField.text else { return true }var limitLength = 6
//件數
if textField == quantity{limitLength = 3}//折扣if textField == discount {limitLength = 1}let newLength = text.count + string.count - range.lengthif newLength > limitLength {return false}
//原價
return newLength <= 6}

--

--