私はかなり簡単だと思うことをしようとしています。ユーザーにドルの金額を入力させ、その金額をNSNumber(NSDecimalNumber?)に保存し、後でその金額を通貨としてフォーマットして表示します。
私の問題は、setNumberStyle:NSNumberFormatterCurrencyStyleとfloatを通貨として表示することではそれほど問題ではありません。問題は、上記のnumberFormatterがこのUITextFieldでどのように機能するかということです。私はいくつかの例を見つけることができます。11月のこのスレッドとこのスレッドは私にいくつかのアイデアを与えてくれますが、もっと多くの質問があります。
私はUIKeyboardTypeNumberPadキーボードを使用しており、表示時にフィールドに$ 0.00(または任意の現地通貨形式)を表示し、ユーザーが数字を入力して小数点以下をシフトする必要があることを理解しています。
- $0.00の表示から始めます
- 2キーをタップ:$0.02を表示
- 5キーをタップ:$0.25を表示
- 4キーをタップ:$2.54を表示
- 3キーをタップ:$25.43を表示
次に、[numberFormatter numberFromString:textField.text]は、NSNumber変数に格納できる値を提供するはずです。
悲しいことに、私はまだ苦労しています:これは本当に最良/最も簡単な方法ですか?もしそうなら、多分誰かが実装を手伝ってくれるでしょうか?UITextFieldには、すべてのキー押下に応答するデリゲートが必要な場合があると思いますが、何を、どこで、どのように実装するのかわかりません。サンプルコードはありますか?よろしくお願いします!私は高低を検索しました...
Edit1:それで、NSFormatterのstringForObjectValue:と、benzadoが推奨するものに最も近いものを調べています:UITextViewTextDidChangeNotification。どちらかでサンプルコードを見つけるのに本当に苦労しました...では、どこを見ればよいか知っているかどうか教えてください。