我可以在UITextField中使用固定的小数分隔符吗?

Mug*_*nan 2 ios swift

如何在uiTextField中键入时有一个固定的小数点分隔符(2位小数).下面附着的是样本图像.

以下应用程序在键入时保持格式,并在键入数字时从左侧移动数字.感谢任何帮助:)

固定小数分隔符

Dha*_*esh 6

根据您的需要,这里是完整的代码:

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var inputField: UITextField!

    override func viewDidLoad() {
        super.viewDidLoad()
        inputField.text = 0.twoDigits
        inputField.addTarget(self, action: "editingNumberChanged", forControlEvents: UIControlEvents.EditingChanged)
    }
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
    func editingNumberChanged() {
        inputField.text = (Double(inputField.text!.numbersOnly.integerValue) / 100).twoDigits
    }
}

extension Double {
    struct Number {
        static let formatter = NSNumberFormatter()
    }
    var twoDigits: String {
        Number.formatter.numberStyle = NSNumberFormatterStyle.CurrencyStyle
        Number.formatter.minimumFractionDigits = 2
        Number.formatter.maximumFractionDigits = 2
        return Number.formatter.stringFromNumber(self)!
    }
}

extension String {
    var numbersOnly: String {
        return "".join(componentsSeparatedByCharactersInSet(NSCharacterSet.decimalDigitCharacterSet().invertedSet))
    }
    var integerValue: Int {
        return decimalNumber.integerValue
    }
    var decimalNumber: NSNumber {
        return NSDecimalNumber(string: self)
    }
}
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

参考来自:如何使用Swift在文本字段(从右到左)上输入货币格式?