0

だから私は最初のセルフガイド iOS アプリとしてチップ計算機に取り組んでおり、請求書を通貨形式で表示する UILabel に出力できるようにしたいと考えています。例として、ユーザーが 1 を押すと、ラベルに $0.01 が表示され、次にユーザーが 2 を入力し、ラベルに $0.12 が表示され、ユーザーが 3 を入力し、ラベルに $1.23 が表示されます。現在、私は入力を取得し、次のような数字を持つ UIButton から表示を更新しています。 NSString *digit = sender.currentTitle; self.display.text = [self.display.text stringByAppendingString:digit];

ここで数値の書式設定に関するいくつかの質問を読み、解決策を試しましたが、何も機能しませんでしたが、ほとんどの解決策は UITextFields 用であったため、入力の取得方法に問題があるのではないかと考えています。どんな助けでも大歓迎です。

*明確にするために、私が目指しているのはスピードです。小数点ボタンがあり、ディスプレイに $ 記号が表示されていますが、小数点ボタンを取り除きたいので、ユーザーは数値を打ち込むだけで、小数点を入れることさえ気にしません。

4

1 に答える 1

1

ここにアイデアがあります。数値をセント/ペニーで保存しないでください。つまり、通貨の可能な最小値です。そうすれば、ユーザーが別の数字を押した場合、既存の数字に 10 を掛けて新しい数字を追加するだけで済みます。

例:

  • ユーザーが 1 を押す => 数値は以前は 0 だったので、新しい数値は 0 * 10 + 1 = 1 です
  • ユーザーが 2 を押す => 数字は以前は 1 だったので、新しい数字は 1 * 10 + 2 = 12 です
  • ユーザーが 3 を押す => 数字は以前は 12 だったので、新しい数字は 12 * 10 + 3 = 123 です

これを表示するには、数値を 100 (または指定された通貨に適したもの) で割り、結果を %0.01f 形式の文字列で使用するだけです。

于 2012-08-13T04:37:34.350 に答える