teléfono telefono telefonicos paises pais número numero letras cómo cuenta como codigos codigo ciudades celular cambiar apple abreviaturas iphone objective-c ios

iphone - telefono - Convertir códigos de país en nombres de países



como cambiar mi numero de telefono en apple id (5)

Necesito convertir una lista de códigos de país a una matriz de país. Esto es lo que he hecho hasta ahora.

- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. pickerViewArray = [[NSMutableArray alloc] init]; //pickerViewArray is of type NSArray; pickerViewArray =[NSLocale ISOCountryCodes]; }


En Swift 3, la superposición de Foundation cambió bastante.

let countryName = Locale.current.localizedString(forRegionCode: countryCode)

Si desea nombres de países en diferentes idiomas, puede especificar la configuración regional deseada:

let locale = Locale(identifier: "es_ES") // Country names in Spanish let countryName = locale.localizedString(forRegionCode: countryCode)


En iOS 9 y superior, puede recuperar el nombre del país desde el código del país haciendo lo siguiente:

NSString *countryName = [[NSLocale systemLocale] displayNameForKey:NSLocaleCountryCode value:countryCode];

Donde countryCode es obviamente el código del país. (por ejemplo: "US")


Esto funcionará en iOS8:

NSArray *countryCodes = [NSLocale ISOCountryCodes]; NSMutableArray *tmp = [NSMutableArray arrayWithCapacity:[countryCodes count]]; for (NSString *countryCode in countryCodes) { NSString *country = [[NSLocale systemLocale] displayNameForKey:NSLocaleCountryCode value:countryCode]; [tmp addObject: country]; }



Puede obtener un identificador para un código de país con localeIdentifierFromComponents: y luego obtener su información.

Así que para crear una matriz con nombres de países puedes hacer:

NSMutableArray *countries = [NSMutableArray arrayWithCapacity: [[NSLocale ISOCountryCodes] count]]; for (NSString *countryCode in [NSLocale ISOCountryCodes]) { NSString *identifier = [NSLocale localeIdentifierFromComponents: [NSDictionary dictionaryWithObject: countryCode forKey: NSLocaleCountryCode]]; NSString *country = [[NSLocale currentLocale] displayNameForKey: NSLocaleIdentifier value: identifier]; [countries addObject: country]; }

Para ordenarlo alfabéticamente puedes añadir

NSArray *sortedCountries = [countries sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)];

Tenga en cuenta que la matriz ordenada es inmutable.