如何使用kmsPerHour UnitType处理MeasurementFormatter?

时间:2019-04-02 15:49:29

标签: ios objective-c nsmeasurementformatter

我需要使用Objective-C上的MeasurementFormatter显示km / h值中的整数。

有样品吗?

NSMeasurementFormatter *formatter = [[NSMeasurementFormatter alloc] init];
formatter.unitStyle = MKDistanceFormatterUnitStyleAbbreviated;

1 个答案:

答案 0 :(得分:1)

这是一些例子

    NSMeasurementFormatter *formatter = [[NSMeasurementFormatter alloc] init];
    formatter.unitStyle = NSFormattingUnitStyleMedium;
    formatter.locale = [NSLocale localeWithLocaleIdentifier:@"en_US"];

    // format 100 km/h

    formatter.unitOptions = NSMeasurementFormatterUnitOptionsProvidedUnit;
    NSUnitSpeed *speed = [NSUnitSpeed kilometersPerHour];
    NSString *speedString = [formatter stringFromMeasurement:[[NSMeasurement alloc] initWithDoubleValue:100.0 unit:speed]];

    NSLog(@"kilometers %@", speedString);

    // format 100 mph

    formatter.unitOptions = NSMeasurementFormatterUnitOptionsProvidedUnit;
    speed = [NSUnitSpeed milesPerHour];
    speedString = [formatter stringFromMeasurement:[[NSMeasurement alloc] initWithDoubleValue:100.0 unit:speed]];

    NSLog(@"miles %@", speedString);

    // convert 100 km/h to 62.137 mph for en_US locale

    formatter.unitOptions = NSMeasurementFormatterUnitOptionsNaturalScale;
    speed = [NSUnitSpeed kilometersPerHour];
    speedString = [formatter stringFromMeasurement:[[NSMeasurement alloc] initWithDoubleValue:100.0 unit:speed]];

    NSLog(@"miles to kilometers %@", speedString);