2010-03-05 5 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]; 


} 

Comment puis-je le SumCurrency.text formated comme 1,999 au lieu de 1999En utilisant NSNumberFormatter pour formater la monnaie en sortie UILabel

S'il vous plaît aider .. Je suis nouveau à l'objectif - C, mais mon projet est presque 95 % sur le constructeur de l'interface.

J'ai juste besoin d'aide avec le code ci-dessus pour mettre en œuvre .. S'il vous plaît, je me bats beaucoup avec cela.

Cordialement, Débutant.

+2

Le code fourni en haut * fait * print '$ 1,999' (si vous changez n à 1999). Pourquoi n'utilisez-vous pas le formateur dans votre méthode buttonPressed1? – nall

Répondre

13

J'obtenu la réponse .. Mais pour l'avenir 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

La question que vous avez posée avait une réponse, vous le faisiez mal voir la même réponse à votre question ci-dessous – yunas

1

Note de personne à personne qui a demandé et a répondu à cette question.

Vous avez dit,

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

mais je pense que si vous utilisez un objet d'une classe, comme NSNumber, alors vous pourriez vouloir mettre

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

Voyez ce que je veux dire ?

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 ]; 

utilisation

SumCurrency.text = [ fmt stringFromNumber: n ]; 

et vous avez fini avec elle

+0

G8 ça marche quand on peut changer de région !! Merci –

+0

est-il donner problème dans l'avenir ?? –

Questions connexes