gpt4 book ai didi

objective-c - NSMassFormatter 无法将克转换为磅 (NSUnitMass) 或显示值

转载 作者:行者123 更新时间:2023-11-29 05:53:41 25 4
gpt4 key购买 nike

我正在尝试使我的 API 调用现代化,并希望利用 NSMassFormatter。问题很简单。我无法得到任何输出(针对帝国语言环境)。 NSMeasurement的描述是正确的。

如果我提供克数,如何使NSMassFormatter自动显示“123磅”重量?

NSNumber *weightInGrams = @(62453.0);

NSMassFormatter *weightFormatter = [NSMassFormatter new];
weightFormatter.forPersonMassUse = YES;
weightFormatter.numberFormatter.locale = [NSLocale localeWithLocaleIdentifier:@"en_UK"];

NSMeasurement *weightMeasurement = [[NSMeasurement alloc] initWithDoubleValue:[weightInGrams doubleValue] unit:[NSUnitMass grams]];

NSString *weightString = [weightFormatter unitStringFromValue:[weightInGrams doubleValue] unit:NSMassFormatterUnitPound];
NSLog(@"%@", weightMeasurement);
NSLog(@"%@", weightString);

2019-03-26 17:23:37.535156+0100 testasa[65239:9291466] <NSMeasurement: 0x60800002d020> value: 62453.000000 unit: g
2019-03-26 17:23:37.535169+0100 testasa[65239:9291466]

最佳答案

格式化程序不执行任何转换。它只是格式化一个数量。在任何语言中,克仍然是克。

但是,NSMassFormatter 确实提供了一种基于千克的便捷方法。例如:

let grams = 62453.0
let measurement = Measurement(value: grams, unit: UnitMass.grams)
let kilos = measurement.converted(to: .kilograms)
let formatter = MassFormatter()
formatter.isForPersonMassUse = true
let s = formatter.string(fromKilograms: kilos.value)
print(s) // "137.685 lb” on my machine

关于objective-c - NSMassFormatter 无法将克转换为磅 (NSUnitMass) 或显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55410196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com