2012-05-08 43 views
1

我決定將我的幾個項目合併到一個項目中,使用相同的代碼庫,並針對不同版本的應用程序使用不同的目標。幾個本地化仍然只顯示英語

我的應用程序被翻譯成7種語言,默認爲英文。其他語言是:瑞典語,荷蘭語,德語,法語,波蘭語和西班牙語。翻譯之前就像一個魅力。我正在使用NSLocalizedString,並且已經翻譯了我的Localizable.strings。 但是,現在我已將我的項目合併在一起,並且還添加了InfoPlist.strings文件,該應用程序開始使用默認文本(英文)。當我啓動應用程序並獲取「共享位置」問題時,我用本地化語言(因此操作系統確實獲得了本地化)得到問題,但其餘應用程序仍然是英文的。

這些文件正確翻譯並沒有錯誤。我測試了幾種語言,但都是英文的。 如果我將CFBundleDevelopmentRegion設置爲Swedish,整個應用程序是用瑞典語代替。所以本地化工作,但應用程序忽略了系統設置。

我錯過了什麼嗎?

+1

嘗試清理項目並在此之後重建應用程序。 –

+0

也可能是100倍。 –

回答

2

我找到了我的問題的答案。我有幾個字符串文件,一個用於我的應用翻譯,另一個用於每個目標InfoPlist.strings,其中僅包含本地化應用名稱的CFBundleDisplayNameCFBundleName。這些不能包含在Localizable.strings中,因爲這些對於每個目標都不相同。

我從我的項目中刪除了InfoPlist.strings文件,現在應用程序再次本地化。