#12瘋狂購物 App — UIStepper 和數字變字串練習
Published in
5 min readAug 1, 2021
利用UIStepper及數字轉換成文字
1.先宣告各個物件的變數
@IBOutlet weak var bananaImage: UIImageView!@IBOutlet weak var mangoImage: UIImageView!@IBOutlet weak var pineappleImage: UIImageView!@IBOutlet weak var strawbarryImage: UIImageView!@IBOutlet weak var fruitImage: UIImageView!
@IBOutlet weak var bananaStepper: UIStepper!@IBOutlet weak var mangoStepper: UIStepper!@IBOutlet weak var pineappleStepper: UIStepper!@IBOutlet weak var strawbarryStepper: UIStepper!@IBOutlet weak var totalView: UIView!@IBOutlet weak var totalMoneyLabel: UILabel!@IBOutlet weak var bananaQtyLabel: UILabel!@IBOutlet weak var mangoQtyLabel: UILabel!@IBOutlet weak var pineappleQtyLabel: UILabel!@IBOutlet weak var strawbarryQtyLabel: UILabel!var bananaQty:Int = 0var mangoQty:Int = 0var pineappleQty:Int = 0var strawbarryQty:Int = 0//水果價錢var bananaMoney:Int = 100var mangoMoney:Int = 150var pineappleMoney:Int = 120var strawbarryMoney:Int = 250var totalMoney:Int = 0
//NumberFormatter 可以幫我們將數字變成特定的字串格式。let formatter = NumberFormatter()
2. 在viewdidload( )裡面設定圖片的圓角
fruitImage.layer.cornerRadius = 20 bananaImage.layer.cornerRadius = 20 mangoImage.layer.cornerRadius = 20 pineappleImage.layer.cornerRadius = 20 strawbarryImage.layer.cornerRadius = 20 totalView.layer.cornerRadius = 20
3.把四個UIStepper都拉到同一個function,同步變更數量及總金額
//把Stepper字串轉成Int
bananaQty = Int(bananaStepper.value)
mangoQty = Int(mangoStepper.value)
pineappleQty = Int(pineappleStepper.value)
strawbarryQty = Int(strawbarryStepper.value) //把數字轉換成字串寫到Label
bananaQtyLabel.text = " \(bananaQty)"
mangoQtyLabel.text = " \(mangoQty)"
pineappleQtyLabel.text = " \(pineappleQty)" strawbarryQtyLabel.text = " \(strawbarryQty)" //計算總金額
totalMoney = (bananaQty * bananaMoney) + (mangoQty * mangoMoney) + (pineappleQty * pineappleMoney) + (strawbarryQty * strawbarryMoney) //把小數點去掉
formatter.maximumFractionDigits = 0//轉換成錢幣符號
formatter.numberStyle = .currencytotalMoneyLabel.text = formatter.string(from: NSNumber(value: totalMoney))
//將數字以指定的格式轉成字串,由於 string(from:) 的參數 from 型別是 NSNumber,所以我們須以 NSNumber(value: money) 將 Int 型別的 money 變成 NSNumber。
//totalMoneyLabel.text = " \(totalMoney)" 只顯示數字