2017-08-08 39 views
0

我一直在Swift程序中使用Today Widget,並且沒有任何問題,直到我開始使用iOS 11 beta。從那時起,Bundle Display Name沒有得到本地化。在我的Info.Plist我:Swift iOS 11 Beta今日小工具infoPlist.Strings不能本地化

<key>CFBundleDisplayName</key> 
<string>NSLocalizedString(CFBundleDisplayName, nil)</string> 
InfoPlist.Strings文件

而且我有

"CFBundleDisplayName" = "Recent Chats"; 

如果我顯示之前的iOS 11測試版上的任何小部件,字符串被正確定位,但是當我使用iOS 11 beta設備顯示字符串NSLocalizedString(CFBundleDisplayName, nil)

有沒有人知道可能會導致此問題的iOS 11測試版或錯誤的變化?

回答

0

你在ios 11模擬器或真實設備上測試過嗎?如果您在模擬器上測試,請在模擬器中從設置>常規>語言&區域更改模擬器語言。

另一個有趣的事情,我認識到,如果你使用base.lproj只作爲英文版本,並且沒有這樣的英文本地化,當模擬器語言改爲Enlish(US)或英語(UK)時,InfoPlist.Strings基地)價值沒有顯示。

+0

我實際上在模擬器和實際設備上測試過。改變語言確實有助於找出問題。我不得不將默認字符串放在Info.plist中,而不是'NSLocalizedString'文本中。 –