單向非即時的基本匯率app 💰

👀操作畫面:

✏️程式碼:

import UIKitclass ViewController: UIViewController {@IBOutlet weak var moneySegCtrl: UISegmentedControl!@IBOutlet weak var photoSwitch: UISwitch!@IBOutlet weak var moneyLabel: UILabel!@IBOutlet weak var MoneyInput: UITextField!@IBOutlet weak var moneyOutput: UITextField!override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view.//調整segmentedControl字型moneySegCtrl.setTitleTextAttributes([.font: UIFont(name: "Nagurigaki-Crayon", size: 22)], for: .normal)}//UIswitch,segment上的文字變圖案
@IBAction func switchPhote(_ sender: UISwitch) {if (sender.isOn == false) {moneySegCtrl.setImage(UIImage(named: "US.png"), forSegmentAt: 0)moneySegCtrl.setImage(UIImage(named: "GBP.png"), forSegmentAt: 1)moneySegCtrl.setImage(UIImage(named: "JP.png"), forSegmentAt: 2)moneySegCtrl.setImage(UIImage(named: "EUR.png"), forSegmentAt: 3)} else{moneySegCtrl.setTitle("美金", forSegmentAt: 0)moneySegCtrl.setTitle("英GBP", forSegmentAt: 1)moneySegCtrl.setTitle("日幣", forSegmentAt: 2)moneySegCtrl.setTitle("EUR", forSegmentAt: 3)}}//segmentcontrol換moneylabel文字標籤@IBAction func changeMoneyLabel(_ sender: UISegmentedControl) {if sender.selectedSegmentIndex == 0{moneyLabel.text = "美金"}else if sender.selectedSegmentIndex == 1{moneyLabel.text = "英GBP"}else if sender.selectedSegmentIndex == 2{moneyLabel.text = "日幣"}else{moneyLabel.text = "EUR"}}//按下按鈕計算匯率
@IBAction func buttonExcMoney(_ sender: Any) {
//一按下計算button,鍵盤收回MoneyInput.resignFirstResponder()moneyOutput.resignFirstResponder()
var price = Double(MoneyInput.text!)//currency變數直接在func中建立,不用另外宣告func priceExchange (currency:Double){if price != nil{let ntPrice = price! * currency//只要計算到小數點第二位let ntPriceString = String(format: "%.2f", ntPrice)moneyOutput.text = ntPriceString}}if moneySegCtrl.selectedSegmentIndex == 0{priceExchange(currency: 30.5)}else if moneySegCtrl.selectedSegmentIndex == 1{priceExchange(currency: 37.5)}else if moneySegCtrl.selectedSegmentIndex == 2{priceExchange(currency: 0.27)}else {priceExchange(currency: 32.7)}}
//清空數字clear按鈕@IBAction func buttonClear(_ sender: Any) {MoneyInput.text = ""moneyOutput.text = ""}}

下次想要改進的地方:

  1. 變成可雙向計算的即時匯率app
  2. 用array和for迴圈讀取segmented control圖片
  3. 再多研究幾個鍵盤收回的方式

😃 😃

--

--