*comment
매개 변수 는 무엇입니까?
NSString *NSLocalizedString(NSString *key, NSString *comment)
이렇게하면 :
NSLocalizedString(@"Hello_World_Key", @"Hello World")
두 가지 버전의 Localizable.strings (영어 및 스페인어)가있는 경우 각각 항목이 필요합니까?
English.lproj/Localization.strings: @"Hello_World_Key" = @"Hello World";
Spanish.lproj/Localization.strings: @"Hello_World_Key" = @"Hola Mundo";
영어가 중복되지 않습니까?
답변
주석 문자열은 응용 프로그램에서 무시됩니다. 응용 프로그램에서 발견되는 키의 문맥 사용에 의미를 추가하기 위해 번역가의 이익을 위해 사용됩니다.
예를 들어, 해당 언어 ( “What ‘s up World”, “Yo World”, “Good Day World”등)에서 구가 Hello_World_Key
얼마나 형식적이거나 비공식적인지에 따라 특정 언어에서 키 값이 다를 수 있습니다 Hello World
.
주석 필드에 문자열을 추가하여이 사용법을 번역자에게 힌트 할 수 있습니다. 번역자에게 응용 프로그램을 더 잘 현지화 할 수 있습니다.
답변
두 번째 매개 변수는 소스 코드를 스캔하여 문자열 파일을 생성 할 수 있는 genstrings 명령 줄 유틸리티 를 사용하는 경우 문자열 파일에 자동으로 표시되는 주석입니다 .
주석은 로컬 라이저에게 유용합니다. 예를 들면 :
NSLocalizedString(@"Save",@"Title of the Save button in the theme saving dialog");
genstring을 실행하면 다음과 같이 Localizable.strings 파일에 항목이 생성됩니다.
/* Title of the Save button in the theme saving dialog */
"Save" = "Save";
답변
번역에 대한 개발자 이해를위한 것입니다. 즉, 해당 문자열 파일에서 해당 문자열을 가져 오는 키를 제공합니다.
댓글 매개 변수를 사용하면 개발자가 키가 나타내는 내용을 이해할 수 있습니다.