問題タブ [nsnumberformatter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1890 参照

ios - 入力したようにNSStringにグループ化コンマを挿入する方法は?

ユーザーが UILabel に数値文字列を入力すると、ユーザーが入力したテキストが表示されます。

これは正常に動作し、NSNumberFormatter を使用して表示をフォーマットし、1000000 を入力すると別のボタンをタップすると 1,000,000 に変換されるようにします。

ただし、これらのグループ化コンマをユーザーの種類として表示したいと思います。文字列に物を挿入する方法は理解できますが、ユーザーが入力する方法はわかりません。これには変更可能な文字列が必要ですか?

どうにかして文字列の長さを監視し、それを 3 つのグループに分割して、コンマが挿入された新しい文字列を作成して表示することはできますか? 私はおそらくそれを行うことができますが、私が困惑しているのは「入力されたとおり」の部分です。

もう 1 つの考えは、文字列を追加して表示し、表示を新しい NSString に読み込んでフォーマットし、すぐに再度表示することです。だから私はそれを試しました、そしてそれはほとんどうまくいきます:

また、フォーマッタは数字が入力されるたびに作成および解放されるという事実とともに、4 桁の後に null を返します。

更新: ラベルでそれを行う方法を見つけました (@Michael-Frederick の助けを借りて)。NSNotification を使用します。

これは非 10 進数では完全に機能しますが、小数点を入力しようとすると無視されて削除されます。このメソッドを呼び出さない場合は、小数点が受け入れられ、すべて正常に機能します。

数値入力は次のとおりです (ボタンから)。

通知によって呼び出される updateDisplay メソッドは次のとおりです。

コメントアウトしてみました

しかし、それは違いはありません。

0 投票する
2 に答える
3567 参照

iphone - 文字列を電話番号形式に変換するにはどうすればよいですか?Objective c

文字列を電話番号形式に変換したい。たとえば、値が「456897012」の文字列があります。ここで、(456)897-012のような電話番号形式に変換したいと思います。それで、そのためのプロセスは何ですか?どうやってやるの?

0 投票する
1 に答える
514 参照

iphone - 通貨形式の文字列を通常の数値形式に設定するには?

iPhoneで通貨形式の文字列を通常の数値形式に設定するにはどうすればよいですか? 「Rs 10,000」または「$ 1000,000」という通貨形式の数値があります。これを「10000」または「1000000」などの通常の数値形式の文字列としてデータベースに保存しています..それを変換する方法このフォームに..後者の文字列でのみ、計算で使用するために [string intValue] を使用できるためです

0 投票する
1 に答える
1394 参照

iphone - 通貨名リストからロケールを取得するにはどうすればよいですか

私は通貨選択画面を作成しています。そのために、次のコードを使用して通貨のリストを表示し、テーブルビューに入力される通貨の配列を作成しています

.しかし、通貨名とロケールを接続する方法が見つかりません.つまり、通貨名を選択すると、他の画面での通貨表示に対応するロケールを設定できるはずです.通貨リストからロケールを見つける方法

0 投票する
1 に答える
217 参照

macos - NSFormatterを使用して、ユーザータイプとして文字列を変更する

MacOSXデスクトップCocoaアプリを書いています。いくつかの値を持つNSTableViewがあり、カスタムNSNumberFormatterを使用してそれらの値を制御しようとしています。

私の望ましい行動:

ユーザーが値を入力しているときに-と入力すると、電卓の+/-ボタンと同じように動作するようにします。したがって、ユーザーが「500-」と入力した場合、その文字列を自動的に「-500」に置き換えたいと思います。

これで、この状況を処理して目的の置換文字列を返すNSNumberFormatterの動作するサブクラスができました。しかし、NSTableViewに入力すると、ログに「500-」が「-500」に置き換えられていることが示されますが、NSTableViewには「500」のみが表示され、前または後のどちらにも-は表示されません。

NSTableViewが実際に負の数を表示するように、xibまたはNSNumberFormatterサブクラスで行う必要があることはありますか?

これをコンソールに記録しています:

ただし、NSTableViewのセルには、その後も「500」と表示されます。

0 投票する
1 に答える
1937 参照

ios - NSNumberFormatter が小数点以下のゼロを受け入れない

同様の質問が寄せられていますが、提供されたソリューションは最新の iOS SDK では機能しないか、この特定のケースには正確に適用できないことがわかりました。

NSNotification を使用してメソッドを呼び出します。これは、ボタン入力からの数字を使用して入力されたときに、UILabel でグループ化記号を使用して数値をフォーマットします。小数点の後にゼロが入力されていない限り、整数と小数でもうまく機能します。例えば ​​2000 と入力すると、2,000 と表示されますが、問題なく入力されています。23.345 を入力すると、それも問題なく表示されます。これらの数値に対して行われた計算はすべて正しく行われます。しかし、0.0001 や 0.2340007 を入力することはできません。小数点の後にゼロを取り、追加することはありません。

元のコードのアイデアは、stackoverflow の別の投稿から入手しました。

フォーマッタのパラメータを使用して(私が試した)微調整をしても、小数点の後にゼロを入力することはできません。

0 投票する
1 に答える
128 参照

objective-c - NumberFormatter のいくつかの問題

上記のコードは、プロジェクトの 2 番目のビューである Movie_LibraryEditorViewController.m ファイルからのものです。「self.movi​​e.budget」では値を取らず、null として取ります。 最初のビューには、テキストが表示されるラベルがあります。現在、「映画」オブジェクトは、次のメソッドをオーバーライドしたクラス Movie_Library です。

今私の質問は、なぜ Null 値なのですか? 私はここで間違っていますか?

0 投票する
2 に答える
235 参照

iphone - NSNumberFormatter の問題

私のアプリでは、例のイベントの人々の間で金額を共有する必要があります.RAM、RAJ、RAGHUのような3人の名前があり、RAMがイベントに10.00の金額を入れた場合10.00/3=3.333333

RAJ はRAM に支払う必要があります-------------3.33
RAGHU は RAM に支払う必要があります -------3.33

彼が得たすべてのイベントで他の2人から 6.66 here 0.1 行方不明 この問題を解決するにはどうすればよいですか 私は以下のように NumberStyle:NSNumberFormatterCurrencyStyle を使用しています

0 投票する
0 に答える
844 参照

iphone - 選択した通貨コードに従ってロケールを設定する方法

選択した通貨コードに従ってロケールを設定する方法はありますか。通貨コードのリストを取得できます。通貨コードを選択すると、USD と表示され、ロケール識別子「en-US」を取得できるはずです。それに応じてロケールを設定します。目的は、アプリケーションで使用されるすべての通貨をこのロケールにフォーマットすることです。これを行う方法?

コードを使用して、通常の文字列を通貨文字列に設定しました

そのためには、ロケール識別子 (この場合は @"ja_JP") を取得する必要があります。私のアプリでは、通貨を変更するオプションがあります。ユーロが設定されている場合、ロケール識別子が変更されます

0 投票する
1 に答える
1473 参照

iphone - NSNumberformatter 小数点以下の桁数を追加する

いくつかの浮動小数点値をテキストファイル (JSONFormat) にエクスポートしてから、プロジェクトに再度インポートします。奇妙なことに、NSNumberformatter は文字列を受け取り、ランダムな (?) 小数点以下の桁数を独自に追加します....

これは私が NSLog から得たものです:

ご覧のとおり、右側の値は入力文字列 (f2) で、左側の値はフロート (f1) です。

私のコードは次のとおりです。

なぜこれが起こっているのですか?