2014-01-24 36 views
4

我已經搜索了相關的問題,並嘗試了許多建議的方法,但似乎都沒有工作。使用Xcode 5禁用英文本地化

我有一個只有日語的應用程序,當它在英語設備上運行時,會獲得UI項目(如後退按鈕翻譯)(「返回」)。

要做到這一點,我有:

  • 從我的項目中刪除從「本地化」的英文,並選擇刪除本地化文件(是一個單一的* .strings文件)。

  • 改變CFBundleDevelopmentRegion在我的Info.plist從jp_JPjp,因爲我讀它應該與*的.lproj文件夾的名稱。

  • 清理,刪除,關閉Xcode等,但默認的UI項目仍然被翻譯成英文。

而且我得到在Xcode 5現在有些怪異的行爲:

  • 檢查「使用基地國際化」支票簿提出了一個空的「選擇文件和參考語言創建基地本土化」。選擇「取消」或「完成」不起作用,沒有任何反應。

  • 點擊「+」按鈕添加其他>「基礎(Base)」本地化不做任何事情。

我說我的問題似乎是我的基地本地化仍然以某種方式英語但我找不到方法來改變這一點。有任何想法嗎?

回答

4

我發現,要真正除去英語支持,我要好好地設置CFBundleDevelopmentRegion成一個完整有效的區域(例如ja_JP),而不是隻是一個語言(只是ja仍然導致英文顯示出來)。

當您有一個有效的區域時,Xcode會顯示您的國家的名稱,而不是Plist編輯器中的原始值。


好像一些模塊,如MFMailComposeViewController,得到本地化的英語無論怎樣(在iOS 6測試和7)。

3

我遇到了同樣的問題。以下是我通過它們完成的步驟。

  1. 本地化你的故事板文件。
    1. 在Xcode中選擇您的Storyboard文件。
    2. 在「文件檢查器」中的「本地化」子標題下,按下「本地化...」按鈕。
    3. 出現一個對話框,顯示「是否要本地化此文件?該文件將被移動到lproj文件夾中,用於以下語言。「它列出了一種語言。對我來說,這是「英語」,我選擇了這一點。對於你,我懷疑它會是「日本人」。
    4. 按下「本地化」按鈕。
  2. 如果它警告您,您的故事板文件已在項目之外更改,請選擇「仍然保存」。如果你不這樣刪除你的項目中的故事板。這發生在我的一個源控項目中,但沒有一個新的空項目。
  3. 回到您的項目並選中「Use Base Internationalization」複選框。您的故事板應顯示在「選擇文件和參考語言以創建基本本地化」表單中。

如果你回到故事板,你會看到「Base」作爲選中的本地化。我有我的語言(英語)作爲選項顯示。當我檢查它時,會創建一個storyboard.strings文件。由於我的基地已經是我的首選語言,所以我不需要一個字符串文件,所以我刪除了它。我認爲,如果我有另一種語言,我可以選擇它並獲取該語言的storyboard.strings文件。