Метка MKPlacemark:вернуть аббревиатуру штата США в административную область
-
19-09-2019 - |
Вопрос
Я использую MKPlacemark
класс для заполнения метки сведениями о местоположении.При вызове AdministrativeArea
свойство, возвращается полное название штата США (напримерЗападная Вирджиния).Есть ли способ вернуть ТОЛЬКО инициалы (напримерВВ)?
Решение
Документы Apple для этого свойства предположите, что нет реального определения того, что он может содержать.Вероятно, вам лучше всего создать функцию для сопоставления полного названия состояния с 2-буквенным кодом и передать результат свойства через нее перед отображением.Я бы использовал исходную строку по умолчанию, если вы не получите совпадения.
-(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;
}
Не связан с StackOverflow