This is an example of a situation where categories in Objective-C shine.
The cleanest solution is to create a category for NSNumber..h:
@interface NSNumber (Formatter)
- (NSString *)currencyStringValue;
@end
.m:
@implementation NSNumber (Formatter)
- (NSString *)currencyStringValue
{
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
formatter.locale = [NSLocale currentLocale];
formatter.numberStyle = NSNumberFormatterCurrencyStyle;
return [formatter stringFromNumber:self];
}
@end
#import "NSNumber + Formatter.h" :
- (IBAction)buttonPressed1:(id)sender
{
double total = [Amount1.text doubleValue] + [Amount2.text doubleValue];
NSNumber *totalNumber = [NSNumber numberWithDouble:total];
SumCurrency.text = totalNumber.currencyStringValue;
}
.