如何在swift 3中的UItextField中使用波斯数字?

时间:2017-06-19 10:21:01

标签: ios swift3 uitextfield nsnumberformatter numberformatter

您好我在我的swift3应用程序中使用文本字段 - 我希望当用户在文本字段中输入数字而不是英文编号时,textfield显示波斯语编号 - 我的文本字段键盘设置为只输入数字,以便用户可以'使用键盘在文本字段中使用文本,这是我的代码不起作用

  override func viewDidLoad() {
         super.viewDidLoad()
 let numberFormatter = NumberFormatter()
    numberFormatter.locale = Locale(identifier: "fa")
    numberFormatter.numberStyle = NumberFormatter.Style.decimal
    let cm:Int? = Int(englishNumber.text!)

    if cm != nil {
    numberFormatter.string(from: NSNumber(value: cm!))
    myTextField.text = numberFormatter.string(from: NSNumber(value: cm!))!
    }

**记得我使用了textfield Delegate,我希望用户输入的每个号码都改为波斯语号,用户认为写波斯语号**

1 个答案:

答案 0 :(得分:0)

试试这个:

 func convertEngNumToPersianNum(num: String)->String{
        let number = NSNumber(value: Int(num)!)
        let format = NumberFormatter()
        format.locale = Locale(identifier: "fa_IR")
        let faNumber = format.string(from: number)

        return faNumber!
    }