Skip to content

Instantly share code, notes, and snippets.

Created December 24, 2017 06:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save anonymous/5efdd2e721b66bb82e116d1168e6fb76 to your computer and use it in GitHub Desktop.
Save anonymous/5efdd2e721b66bb82e116d1168e6fb76 to your computer and use it in GitHub Desktop.
currencyDelegate
//
// CurrencyDelegate.swift
// TextFieldDelegate
//
// Created by Timothy Isenman on 12/10/17.
// Copyright © 2017 Timothy Isenman. All rights reserved.
//
import Foundation
import UIKit
class CurrencyDelegate: NSObject, UITextFieldDelegate {
var amount: Int = 0
func currencyAmount() -> String? {
let formatter = NumberFormatter()
formatter.numberStyle = .currency
let amount = Double(self.amount/100) + Double(self.amount%100)/100
return formatter.string(from: NSNumber(value: amount))
}
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if let digit = Int(string) {
amount = amount * 10 + digit
textField.text = String(describing: currencyAmount())
} else if string == "" {
amount = amount / 10
textField.text = String(describing: currencyAmount())
}
return false
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment