#12瘋狂購物 App — UIStepper 和數字變字串練習

利用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 = .currency
totalMoneyLabel.text = formatter.string(from: NSNumber(value: totalMoney))

//將數字以指定的格式轉成字串,由於 string(from:) 的參數 from 型別是 NSNumber,所以我們須以 NSNumber(value: money) 將 Int 型別的 money 變成 NSNumber。

//totalMoneyLabel.text = " \(totalMoney)" 只顯示數字

--

--