문제

나는 사용하고있다 MKPlacemark 위치 세부 사항이있는 레이블을 채우는 클래스. 전화 할 때 AdministrativeArea 재산, 미국 국가의 전체 이름이 반환됩니다 (예 : 웨스트 버지니아). 이니셜 (예 : WV) 만 반환하는 방법이 있습니까?

도움이 되었습니까?

해결책

그 속성에 대한 애플의 문서 포함 할 수있는 것에 대한 실제 정의가 없다고 제안하십시오. 가장 좋은 방법은 아마도 전체 상태 이름에서 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;
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top