문제

국제화 된 iPhone 프로젝트가 있습니다. 다양한 ${lang}.lproj/InfoPlist.strings 단일 키가있는 파일 CFBundleName = "My App Name".

그것은 단일 목표에 대해 잘 작동하지만 여러 대상에서는 작동하지 않습니다.

여러 번 번역하고 싶습니다 InfoPlistMyApp.strings 주요 대상에 대한 파일과 여러 가지 InfoPlistMyApp라이트.strings 라이트 버전의 파일. 그러나 나는 그것을 설정하는 방법을 알 수 없습니다. 그만큼 InfoPlist.strings 이름은 돌로 설정된 것처럼 보이므로 동적으로 대체 할 수 없습니다.

어떤 아이디어?

도움이 되었습니까?

해결책

힘들다면 이것은 매우 쉽습니다. 여러 infoplist.strings, 1 개의 참가자가 될 수 있으며 각각 국제화 될 수 있습니다. 각 세트가 다른 Xcode 그룹에있는 한.

다음과 같은 디렉토리 구조를 설정하십시오.

.../AppName/
            en.lproj/InfoPlist.strings  <-- Contains CFBundleDisplayName
            it.lproj/InfoPlist.strings  <-- ...
            ...
.../AppNameLite/
            en.lproj/InfoPlist.strings  <-- ...
            it.lproj/InfoPlist.strings  <-- ...
            ...

해당 파일을 Xcode 그룹으로 가져 오면 다음과 같습니다.

alt text

"Groups & Files"(Xcode의 왼쪽 상단)를 마우스 오른쪽 버튼으로 클릭하고 "Target Memberhip"이 표시되는지 확인한 다음 대상을 통과하여 각각에 대해 올바른 문자열 세트가 활성화되어 있는지 확인하십시오.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top