2012-09-18 59 views
0

我正在開發用於Mac OS X的應用程序。現在我希望在界面上顯示每個字,標題或字符串以進行本地化。如何在Mac OS上本地化MenuBar x

目前,我已經完成了大部分工作,但是我對MainMenu.xib中的MenuBar感到困惑。

是否有任何方法可以翻譯MenuBar項目的標題目錄?或者我必須爲每個項目製作IBOutlet並將其標題設置爲NSLocalizedString?

回答

4

你絕對應該看看有關本地化的文檔。不過,重要的是,蘋果公司已經改變了Xcode 4發展的一些步驟;所以許多教程現在都有一些不正確的步驟。由於這是問題的本質,我會將我的意見限制在筆尖的本地化。

在項目/信息選項卡添加新的定位

Add localization

只需單擊(+),這將顯示出本地化語言的彈出式菜單。選一個。

選擇要本地化

Choose resources

本地化筆尖現在 ,在Project Navigator中,MainMenu.xib我選擇了本地化的資源有一個法國本地化:

Now multiple localizations under xib

注意,所有的您的IBOutlet和操作將被保留。現在您可以簡單地處理顯示文本,格式,UI元素的大小等,以便與所選的xib相對應。

Localization of nib

+0

+1爲答案,指出全新的XCode功能! – Clafou

+0

@Clafou非常感謝。我已經按照你的步驟,幸運的是一些MenuItem,如撤銷,重做和特殊字符被翻譯,而其他人則沒有。所以我只是爲每個項目製作一個IBOutlet,並最終使用NSLocalizedString設置它們的標題。不管怎麼說,還是要謝謝你!你的建議真的幫助了我! –

2

我可能是比較晚的,但因爲我需要的是我自己,我創建a Ruby gem,您可以使用自動翻譯(幾乎所有的「通用」)項目在MainMenu.xib,一旦你加入必要的本地化。

所有你需要做的是安裝寶石:

sudo gem install cocoalocalize 

,並通過終端運行:

cocoalocalize your_project_folder your_app_name 

* your_project_folder是包含您的.lproj文件夾中的一個(例如es.lproj,fr.lproj)。

將不同的MainMenu.strings文件翻譯成所有可用的語言將由該工具處理。

享受! :)

+0

這正是我正在尋找的。然而,我總是最終得到'成功的本地化項目到0種語言。'我正在使用故事板,這可能是一個問題?在啓動該工具之前,我確實擁有包含MainMenu.strings文件的所有語言文件夾。 – Daniel

+0

我結束了從這裏使用Translator.app:http://stackoverflow.com/a/21239554/345258 – Daniel