2014-05-24 44 views
2

我試圖本地化iOS應用。根據所有教程,第一步是將本地化添加到項目編輯器的信息窗格中。當我到達那裏時,默認情況下不檢查「使用基地國際化」。當我點擊它時,窗口「選擇文件和參考語言......」按預期出現,但它沒有列出任何文件 - 即,有沒有文件本地化的選擇。xCode不會列出用於本地化的storyboard或info.plist

該應用程序構建/運行良好。我的故事板名爲「main.storyboard」,位於項目的主文件夾中,所以我不確定爲什麼xCode無法識別該文件。

值得注意的是,該項目已經過重新命名,並且在添加了沒有基礎的語言之後,我經歷了幾次嘗試本地化的嘗試,並希望稍後添加基礎。但看起來這會讓我走上正軌,而我必須撤銷這些嘗試;在這個過程中,我手動刪除了已創建的.lproj文件夾。

有什麼問題是什麼想法?

回答

8

重要提示:在執行任何操作之前,請保留項目文件夾的備份。

當您選擇use base internationalization時,Xcode將在您的項目中尋找用戶界面文件(Storyboard,Xibs)裏面的任何* .lproj文件夾。但在你的情況下,它不會找到任何* .lproj文件夾。

步驟來解決:

  1. 使用Finder中的故事板創建一個未來 「en.lproj」 文件夾中。 然後將一個UI文件(如main.storyboard(或其他UI文件))移動到新文件夾中。

  2. 在Xcode上重新定位故事板文件。一種方法是刪除故事板文件的舊引用。 (將以紅色顯示)並將其重新添加到Xcode。 現在你會看到這個文件選擇了「英文」本地化。

  3. 現在重試'使用基地國際化'按鈕,它應該建議您將main.storyboard移動到它將爲您創建的Base.lproj。

+0

完美!感謝您的幫助... – Henry95

+0

我遇到了這種情況,因爲我的應用最初只有iPhone,後來我加入了iPad支持。無論出於何種原因,當我創建iPad故事板時,Xcode並未將iPad故事板放在en.lproj中。相反,Xcode將iPad故事板放在與我的.m文件相同的級別上。結果是「使用基地國際化」沒有找到iPad故事板。將iPad故事板移至en.lproj解決了這個問題。 –