2012-02-22 55 views
0

問題是問題與NSLocalizedString,捆綁和IOS5

首先,我們實現本地化與.LPROJ文件夾等fr.lproj,en.lproj,es.lproj等

後來按照所述請求從一個審稿人(內部審稿人不是來自蘋果的人)我們已經切換到基於iso-639-2的語言代碼。

因此,文件夾更改爲fra.lproj,eng.lproj,spa.lproj等,並添加項目引用以使用新文件。刪除舊文件。

重命名文件夾後,在localizable.strings文件中添加的更改和新字符串在應用程序中不受影響。

經過一番研究,我們發現每種語言的文件夾都包含在應用程序 中,ios5使用的是fr.lproj文件夾內容而不是fra.lproj文件夾內容。我們在IOS 4中運行了相同的應用程序,該應用程序像更新的本地化版本一樣運行。

請幫我在IOS 5

感謝

+0

評論者是誰?蘋果是否有人負責App Store?如果不是,我認爲你不應該讓他們影響應該只是一個與他們無關的實現細節。 – bneely 2012-02-22 07:18:26

+0

對不起,評論者不是來自蘋果的人,他只是一名內部評論者。謝謝。 – 2012-02-22 09:25:06

+0

在iOS 5中使用ISO-638-2語言代碼的理由是什麼? – bneely 2012-02-22 09:28:56

回答

1

Apple's documentation優先的ISO-639-2語言代碼的使用方法:

在Mac上的資源目錄OS X包(或iOS應用程序包的頂級目錄)中,可以創建一個或多個語言特定的項目子目錄以存儲特定於語言和區域的資源。每個目錄的名稱都基於所需本地化的語言和區域,後面跟着.lproj擴展名。要指定語言和區域,可以使用以下格式:

language_region.lproj 

目錄名的語言部分是兩個字母的代碼一個符合ISO 639的約定。區域部分也是一個雙字母代碼,但它符合ISO 3166慣例用於指定特定區域

(強調我的)。我不確定,爲什麼它可能適用於您的其他項目,但根據文檔,本地化目錄的名稱需要遵循ISO 639-1(雙字母代碼)。

+0

感謝您的答案和參考鏈接Dirk。 – 2012-02-22 10:11:01