简体   繁体   English

NSDecimalNumber

[英]NSDecimalNumber

NSDecimalNumber is saved with lesser number of zeros, I enter in textfield $6000,00 for example, but in tableview appear $6,00 NSDecimalNumber保存为较少的零,例如在文本字段$ 6000,00中输入,但在tableview中显示$ 6,00

Please help me solve this issue 请帮我解决这个问题

Below is my code: 下面是我的代码:

@property (strong, nonatomic) NSNumberFormatter *currencyFormatter;
@synthesize currencyFormatter;


- (void)viewDidLoad
{
    [super viewDidLoad];

    nameTextField.text = editGift.nameOfGift;

    currencyFormatter = [[NSNumberFormatter alloc]init];
    [currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
    priceTextField.text = [currencyFormatter stringFromNumber:[editGift priceOfGift]];

}

- (IBAction)saveChanges:(id)sender {
    editGift.nameOfGift = nameTextField.text;

    [currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle];
    NSDecimalNumber *priceAmount = [NSDecimalNumber decimalNumberWithString:priceTextField.text];
    editGift.priceOfGift = priceAmount;

    AppDelegate *myApp = (AppDelegate *) [[UIApplication sharedApplication]delegate];
    [myApp saveContext];
    [self.delegate editGiftViewControllerDidSave:self];
}

Display in tableView: 在tableView中显示:

NSNumberFormatter *currencyFormatter = [[NSNumberFormatter alloc]init]; 
[currencyFormatter setNumberStyle:NSNumberFormatterCurrencyStyle]; 
cell.giftCostLabel.text = [currencyFormatter stringFromNumber:[gift priceOfGift]]; 

Try this Code may be helpfull for you. 尝试此代码可能对您有帮助。

 - (IBAction)saveChanges:(id)sender {
        editGift.nameOfGift = nameTextField.text;


    NSDecimalNumber *priceAmount = [NSDecimalNumber decimalNumberWithString:priceTextField.text];

     editGift.priceOfGift =priceAmount;



        AppDelegate *myApp = (AppDelegate *) [[UIApplication sharedApplication]delegate];
        [myApp saveContext];
        [self.delegate editGiftViewControllerDidSave:self];
    }

in Tableview try This 在Tableview中尝试

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


cell.giftCostLabel.text = [currencyFormatter stringFromNumber:editGift.priceOfGift];

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM