InAppSettingsKit을 사용하여 설정을 관리하려고합니다. 이 작업은 .plist 파일과 함께 Settings.bundle을 사용하고 번역되는 각 언어에 대해 .strings 파일을 사용합니다.InAppSettingsKit을 사용하여 Settings.bundle에서 문자열 지역화
설정 응용 프로그램을 사용하여 내 문자열의 번역이 응용 프로그램 외부에서 올바르게 작동하는지 확인할 수 있습니다. 그러나 제 신청서에있을 때 번역은 일어나지 않습니다. 내가 생각
내가 생각 몇 로깅 문장과 함께 InAppSettingsKit 클래스 IASKSettingsReader에서이 같은 코드에 내려 오는 내 도움이 될 :
- (NSString*)titleForStringId:(NSString*)stringId {
NSLog(@"%@",[_bundle localizedStringForKey:stringId value:stringId table:self.localizationTable]);
NSLog(@"%@",[_bundle localizedInfoDictionary]);
return [_bundle localizedStringForKey:stringId value:stringId table:self.localizationTable];
}
만약 내가 제대로 이해하고
는이 테이블을 사용한다self.localizationTable
이라는 이름을 번역 원본으로 사용하십시오. 이 값은 단순히 "루트"입니다. 선택한 언어로 된
Root.strings
파일 경로가 아니므로
localizedStringForKey:value:table:
메서드가 올바른 경로를 가리키는 일부 전역 시스템 참조를 사용해야합니다.
문자열 파일 이름이 Root.plist 파일을 포함하여 대문자 R 인 "Root.strings"임을 확인했습니다.
[_bundle localizedInfoDictionary]
return (null); 그것은 영어와 프랑스어의 두 가지 언어 설정을 위해 이것을하고 있습니다.
디버깅 방법을 잘 모르겠습니다. 당신이 줄 수있는 도움을 주셔서 감사합니다.