2010-03-05 45 views
6
NSNumberFormatter * fmt; 
NSNumber   * n; 

fmt = [ [ NSNumberFormatter alloc ] init ]; 
n = [ NSNumber numberWithFloat: 10 ]; 

[ fmt setFormatterBehavior: NSNumberFormatterBehavior10_4 ]; 
[ fmt setCurrencySymbol: @"$" ]; 
[ fmt setNumberStyle: NSNumberFormatterCurrencyStyle ]; 

// NSLog(@"%@", [ fmt stringFromNumber: n ]; 

[ fmt release ] 


-(IBAction)buttonPressed1:(id)sender 
{ 
double currency = [Amount1.text doubleValue] + [Amount2.text doubleValue]; 

SumCurrency.text = [NSString stringWithFormat:@"%0.0f", currency]; 


} 

如何获得SumCurrency.text格式化为1999,而不是1999年使用NSNumberFormatter输出格式化货币的UILabel

请帮助..我是新来的Objective - C,但我的项目是近95 %在界面构建器上。

我只是需要上述代码的帮助来实现..请我在这方面挣扎了很多。

Regards, 新手。

+2

做了你在上面提供的代码*不*打印 '$ 1,999'(如果n切换至1999年)。你为什么不在buttonPressed1方法中使用格式化程序? – nall 2010-03-05 06:47:00

回答

13

我得到了答案。但对于任何人的未来refernce

-(IBAction)buttonPressed1:(id)sender 
{ 
    double currency = [Amount1.text doubleValue] + [Amount2.text doubleValue]; 
    NSNumberFormatter *numberFormatter = [[[NSNumberFormatter alloc] init] autorelease]; 
    [numberFormatter setNumberStyle: NSNumberFormatterCurrencyStyle]; 
    NSString *numberAsString = [numberFormatter stringFromNumber:[NSNumber numberWithInt:currency]]; 
    SumCurrency.text = [NSString stringWithFormat:@"Converted:%@",numberAsString]; 
} 
+0

你问的问题有一个答案,你做错了 看到我的同样的答案你的问题下面 – yunas 2012-07-12 12:24:09

1

注意以人谁问和回答了这个问题。

你说,

[numberFormatter stringFromNumber:[NSNumber numberWithInt:currency]]; 

,但是,那么你可能想要把

[numberFormatter stringFromNumber:(NSNumber *) currency]]; 

明白我想说我觉得如果你使用一个类,像NSNumber的的对象?

6
NSNumberFormatter * fmt; 
NSNumber   * n; 

fmt = [ [ NSNumberFormatter alloc ] init ]; 
n = [ NSNumber numberWithFloat: 10 ]; 

[ fmt setFormatterBehavior: NSNumberFormatterBehavior10_4 ]; 
[ fmt setCurrencySymbol: @"$" ]; 
[ fmt setNumberStyle: NSNumberFormatterCurrencyStyle ]; 

// NSLog(@"%@", [ fmt stringFromNumber: n ]; 

[ fmt release ]; 

使用

SumCurrency.text = [ fmt stringFromNumber: n ]; 

和你用它

+0

G8它的作品,当我们可以改变地区!谢谢 – 2014-09-16 03:44:32

+0

它给未来的问题? – 2014-09-16 04:05:10