2013-10-28 14 views
0

응용 프로그램의 첫 번째보기에서 사용자는 언어 즉 영어, 프랑스어 등을 선택합니다. 전체 응용 프로그램이 사용자가 선택한 언어로 실행되기를 원합니다.선택한 언어에 따라 응용 프로그램을 실행하는 방법은 무엇입니까?

Doing r & d, 모든 언어에 .strings 파일을 사용해야 함을 발견했습니다. 이 파일에서 번역 된 문자열을 키 - 값 쌍에 추가해야합니다. 내 질문은 선택한 언어에 따라 그. 스트링 파일을 사용하는 방법입니다. 예를 들면. 프랑스어로 된 모든 번역 된 문자열을 포함하는 .strings 파일을 사용해야합니다. 프랑스어가 첫 번째 페이지에서 선택됩니다.

+0

Apple이 최선이라고 말합니다. https://developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPInternational/BPInternational.html#//apple_ref/doc/uid/10000171i – trojanfoe

+2

왜 하시겠습니까? 다르게? IMHO 예기치 않은 동작입니다. 사용자가 Preferences.app에서 설정 한 언어로 앱을 시작할 것으로 기대합니다. 이를 위해 아무 것도 할 필요가 없습니다. 더 나쁜 경우 : 앱에서 내가 언어를 선택하기를 원한다면 나는 곧바로 품질이 좋지 않다고 가정합니다. – DarkDust

+0

또한 질문에'ios'와'osx' 태그가 있습니다. 무엇 이니? – DarkDust

답변

0

Check out this link 당신의 언어 선택에 따라 Localizable.string 파일을 수동으로 가져 오는 데 도움이됩니다. 이 NSDictionaryAppDelegate 또는 SuperViewcontroller으로 관리해야합니다. (모든 UIViewController는 SuperViewController를 확장합니다.)

+0

여기에는 많은 단점이 있습니다. 첫째, 현지화가 필요한 모든 곳에서이 사전을 사용할 수 있어야합니다. 둘째로, 애플은 이것에 대해 알지 못하며 따라서 여전히 현재 시스템의 로케일에서 에러 메시지와 물건을 생산할 것입니다. 셋째, 숫자 및 날짜 형식과 같은 것에도 적용됩니다. 예를 들어, 영어 텍스트로 끝나기도하고','및'.'의 의미를 가진 독일어 숫자 서식이 뒤 바뀔 수도 있습니다. – DarkDust

+0

좋은 답변입니다. 실제로 작동한다. 감사합니다 –

+0

당신은 Welcome @ HiteshBhardwaj – Hitarth

1

아마도 해결책은 다음과 같습니다.

사용자가 응용 프로그램에서 이미 시스템에서 선택한 언어와 로캘 설정을 사용할 것으로 예상됩니다. 앱이 다시 시작될 때 동일한 선택을하도록 만드는 것은 "값 싸고"예상치 못한 것처럼 보입니다.

Apple은 런타임시 로켈 변경을 수행하는 API를 제공하지 않으므로 개인용 API 또는 기타 불쾌한 해킹을 처리해야합니다. 이는 곧 잘못된 번호 및/또는 날짜 형식과 같은 다양한 문제가 발생할 가능성이 있음을 의미합니다.

+0

나는 시스템의 언어에 따라 지역화되는 응용 프로그램 싶지 않아요. –

+0

특정 .string 파일을 다양한 .string 파일 형식으로 사용하는 방법이 있습니까? –

관련 문제