Aquí hay un código de cómo consigo símbolo de moneda ahora:
NSLocale *lcl = [[[NSLocale alloc] initWithLocaleIdentifier:@"au_AU"] autorelease];
NSNumberFormatter *fmtr = [[[NSNumberFormatter alloc] init] autorelease];
[fmtr setNumberStyle:NSNumberFormatterCurrencyStyle];
[fmtr setLocale:lcl];
NSLog(@"%@", [lcl displayNameForKey:NSLocaleCurrencySymbol value:@"AUD"]);
NSLog(@"%@", [fmtr currencySymbol]);
Ambos NSLogs vuelven "AU $". Como entendí de la documentación de desarrollo de Apple, hay al menos dos símbolos de moneda para cada moneda (aunque estos símbolos podrían ser los mismos): local (que se usa dentro de un país. $ Para Australia, por ejemplo) e internacional (AU $ para Australia). Entonces, la pregunta es cómo obtener el símbolo de moneda LOCAL. ¿Algunas ideas?
Gracias de antemano.
Tal vez sea un error (es decir, supervisión del equipo localizador) en iOS. ¿Has probado lo mismo con otras configuraciones regionales, p. ¿ESTADOS UNIDOS? Si llegas allí una vez "$" y una vez "US $", entonces consideraría ese error y lo archivaría en bugreport.apple.com, y agregaría un manejo especial para este AU $ a tu código. –
Sí, definitivamente es un error. Intenté esto y en_US devuelve $ – mackross
@Thomas Tempelmann: Acabo de archivar un error. Gracias. – kovpas