为了本地化我的应用程序,我为三种语言创建了Localizable.strings.我不需要本地化任何nib文件,因为我没有在我的项目中使用任何.没有图像本地化,只有字符串.在代码中,我使用NSLocalizedStrings(@“key”,@“comment”)读取字符串. Localized.strings文件使用UTF-16格式.字符串看起来像这样:“Projects”=“Projekte”;.
当我在模拟器中运行应用程序并更改语言时,我的应用程序在后台运行(SIGKILL).如果我重新运行应用程序,我可以看到语言已经更改,因为编辑按钮的标签是德语,但是我的所有字符串仍然是英文.
我读了很多关于本地化的线索,我在家里有三本iOS书,但我仍然不知道我在做错什么.
我忘了设置别的吗?
有任何想法吗?
解决方法
这是因为当您更改设备的语言时,SpringBoard会杀死所有应用程序,以便在下次启动时“加载”新的语言.您的应用程序被杀死时,无法更改系统语言.如果你想保存你的新语言,它必须被杀死.
您的应用没有崩溃它被iOS杀死(SIGKILL).