2013-01-22 3 views
4

에서와 비슷한 시간대의 목록을 가져옵니다 나는아이폰 설정 앱

NSArray *timezoneNames = [NSTimeZone knownTimeZoneNames] ; 

를 사용하는 시간대의 목록을 얻을 수 있어요하지만 시간대의 생성 된 목록은 모든 주요 도시 이름을 포함하지 않습니다. 인도와 마찬가지로 콜카타 시만 보여줍니다. 나는 뉴 델리 (수도)의 시간대를 표시 할 것으로 예상했다.

iOS가 설정 -> 일반 -> 날짜 시간 -> 표준 시간대에서 생성하는 것과 동일한 시간대 목록을 생성하려면 세계의 거의 모든 주요 도시를 표시해야합니다. 이 목록을 가져올 수 있습니까? 아니면 우리 자신의 데이터베이스 (예 : .plist)를 만들어야합니까?

+0

+1 해결책이 있으십니까? 찾은 경우 대답을 게시하십시오 –

답변

4

Settings.app는 시간대의 목록을 표시 할 PLIST 파일을 사용합니다. 파일 이름은 "all_cities_adj.plist"입니다. 이 파일을 얻으려면 SDK 자체를 깊이 관통해야합니다. 아래 경로를 찾을 수있는 위치를 언급했습니다.

1. Xcode가있는 폴더로 이동하십시오. 2. 마우스 오른쪽 버튼을 클릭하고 패키지 내용보기을 클릭하십시오. 3. 그 내용 ->개발자 ->플랫폼 ->iPhoneSimulator.platform ->개발자 ->SDK를 ->iPhoneSimulator6.1.sdk - ->시스템 ->도서관 ->아마 PrivateFrameworks ->AppSupport.framework 4.In 당신이 PLIST 파일을 찾을 수있는이 폴더에 있습니다.

도움이 필요하시면 알려주세요 ...

+0

답장 +1에 대한 @Amboj 감사합니다. 그리고 이것을 수락합니다. 시뮬레이터가 아닌 실시간 장치의 통과 경로를 공유 할 수 있습니까? 그렇지 않으면이 .plist를 사용하여 동일한 것을 시뮬레이션해야합니다. –

+0

@Saurabh : 내 지식에 따르면, 나는이 plist가 장치에서 가져올 수 없다고 생각합니다. 그래서 나는 우리가 가진 유일한 길은 똑같은 .plist를 사용하고 그것을 시뮬레이트하는 것이라고 생각합니다. 희망이 당신을 도왔습니다. 감사합니다. – Amboj

+0

이것은 현재 iOS 8에 존재하지 않습니다. 어떻게 변경 되었습니까? (사전을 구현 한 경우) –

0

나는이 문제에도 뛰어 들고있어 설정 앱과 동일한 시간대를 얻을 수있는 방법이 없습니다.

나만의 목록을 만들어야합니다.

+0

감사. 더 많은 도시를 추가하기 위해 자체 목록을 만드는 경우 전 세계의 다른 일광 절약 시간제 규칙으로 인해 도시의 특정 시간대를 어떻게 식별 할 수 있습니까? –

0

먼저 국가/도시/시간대/지역을 제공하는 .csv 파일을 다운로드해야합니다. 이 파일을 사용하여 국가 목록과 도시 목록을 표시 할 수 있습니다. 사용자가 원하는 도시를 선택하면 존중받는 국가와 매핑해야합니다. 그러면이 국가는 기기의 시간대와 매핑되어야합니다 ([NSTimeZone knownTimeZoneNames]).

이 링크는 또한이 점에서 유용 할 수 있습니다 :

Get timezone by Country and Region