2つのUITextFieldから入力を受け取り、それらを乗算して3番目のUITextFieldに戻すアプリケーションを作成しようとしています。iOSとSwiftのNSNumberFormatterでロケールを取得する
import UIKit
class ParallelogramSurfaceArea: UIViewController {
@IBOutlet weak var sideA: UITextField!
@IBOutlet weak var height: UITextField!
@IBOutlet weak var surfaceArea: UITextField!
@IBAction func calculate(sender: AnyObject) {
let aText = (sideA.text! as NSString).doubleValue
let hText = (height.text! as NSString).doubleValue
let a = round(10000 * aText)/10000
let h = round(10000 * hText)/10000
let sa = round(10000*(a * h))/10000
sideA.text = "Side A = \(a) m"
height.text = "Height = \(h) m"
surfaceArea.text = "Surface Area = \(sa) m²"
}
問題は、小数点のパッドでは '、'が '。'の代わりに表示されることです。ロケール設定のために計算にエラーが発生します。これをNSNumberFormatterでどのように修正できますか? class ParallelogramSurfaceArea
を改善するためのアドバイスはありますか?あなたが倍増し、現在のローカル考慮して取るために、文字列から変換したい場合は
アップデート 'NSNumberFormatter'を使用するようにしようと、あなたの質問により、現在のロケールに
local
値を設定します。 – rmaddy