04月18日Array428html
編輯/糾錯函數
本地化字符串最經常使用的工具是NSLocalizedString
。這個函數會查找Localizeable.strings
中給定的鍵,而後返回找到的值,沒找到值的話返回鍵自己。Localizeable.strings
是個本地化的文件,因此每一個語言一個版本,而NSLocalizedString
會根據當前語言環境自動選擇正確的版本。genstrings
命令行工具會自動查找文件中對NSLocalizedString
的調用,生成Localizeable.strings
文件的初始版本。工具
最簡單的辦法是用字符串做爲自身的鍵(第二個參數是寫給本地化人員的註釋):spa
1 2 3 |
NSString *string = NSLocalizedString(@"Welcome to the show.", @"Welcome message"); |
要運行genstrings
,你能夠打開一個命令行終端,切換到源碼目錄,而後按以下方式運行它(假設是英文的本地化工程):命令行
1 |
genstrings -o en.lproj *.m |
它會建立一個名爲en.lproj/Localizeable.string
的文件,含有如下內容:code
1 2 |
/* Welcome message */ "Welcome to the show." = "Welcome to the show."; |
即便不運行genstrings
,它也能在開發者使用的語言中工做,由於它會自動將該鍵做爲本地化字符串返回。htm
大多數狀況中,我推薦使用字符串做爲自身的鍵並在能夠將工程交給本地化人員時自動生成Localizeable.stings
文件。這種方法可以簡化開發過程,並可以使Localizeable.strings
文件不累積再也不使用的鍵。開發