Документы Apple по этому свойству предполагают, что нет реального определения того, что оно может содержать. Лучше всего, вероятно, создать функцию для сопоставления полного имени состояния с двухбуквенным кодом и передать результат свойства через него перед отображением. Я бы по умолчанию использовал исходную строку, если вы не получили совпадения.
-(NSString *)codeFromState:(NSString *)state {
NSArray *map = [NSArray arrayWithObjects:@"Alabama",@"AL", @"Alaska",@"AK", ... @"Wyoming", @"WY", nil];
for (int i = 0; i <[map count]; i+=2) {
if ([state compare:[map objectAtIndex:i]] == NSOrderedSame) {
return [map objectAtIndex:i+1];
}
}
return state;
}