使用键盘输入所需格式的货币值



我想要一个以"$0.00"(或基于区域设置的其他符号)开始的屏幕,我可以在其中输入值,并且它会一次更新一个值。(输入1234,返回$0.01,$0.12,$1.23,$12.34)。我知道如何将数字输入到文本字段中,并通过单击按钮更改文本字段或新标签中的格式。但是,我想要的是不需要额外的按钮点击,并使用标签,而不是textField。

float moneyEarnedFloat = [revenueTextField.text floatValue]/100.0f;
NSNumber *moneyEarned = [NSNumber numberWithFloat:moneyEarnedFloat];
NSNumberFormatter *currencyFormatter = [[NSNumberFormatter alloc] init];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
revenueTextField.text = [currencyFormatter stringFromNumber:moneyEarned];

一个例子是mint.com的添加交易屏幕

试试这个:

NSNumberFormatter *currencyFormatter = [[NSNumberFormatter alloc] init];
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
int currencyScale = [currencyFormatter maximumFractionDigits];

TextFieldDidChange:

[mytextField addTarget:self action:@selector(textFieldDidChange) forControlEvents:UIControlEventEditingChanged];

那么做:

    - (void)textFieldDidChange {
myLabel.text = mytextField.text;
}

最新更新