2011-04-24 57 views
2

我有一个iPhone应用程序,需要翻译成不同的语言。目前有两种语言支持:德语&英文。问题是本地化只能在其他时间工作,大部分时间我只是从NSLocalizedString获取属性。Localizable.strings有时只是工作

如果我将Localizable.string文件的Encoding更改为UTF-8并返回到UTF-16,它确实可行,但只有一次,之后它会立即变回不工作状态。

的Xcode 4.0.1

下目前工作的任何人都经历过这样的错误还是有一个修复?

在此先感谢:)

+1

我有完全相同的问题。我不需要搞乱编码。它的工作原理是“隔一段时间”。如果我继续点击“运行”,它将简单地在显示键和显示翻译之间切换。 – 2011-05-11 18:42:21

+0

同样的问题,当我删除我的第二个翻译,只是离开了en.proj。如果你只有一个基地'en',你如何移除并重新添加基地'en'? – 2012-11-29 15:38:56

回答

8

有同样的问题。

而且我还在使用ShareKit。我只是删除了这些本地化的字符串(ShareKit),并没有更多的麻烦:)

我觉得这个问题是不是ShareKit,但它是关于项目具有其它localizedStrings。检查你是否删除它们(复制并粘贴到你的本地化字符串中)。这应该可以解决你的问题。

+0

哦。我没有在ShareKit是Localized.strings(感谢! – Antigluk 2012-07-30 12:28:48

+0

你怎么删除本地化的字符串? – Ricardo 2017-06-23 13:26:41

1

确保翻译文件中的每一行以a;结尾。他们很容易错过,如果你错过了一个,它将不会被使用。您将会像您所描述的那样获得NSLocalizedString属性。

虽然在切换编码后,这并没有什么意义。这似乎有点奇怪。但是,这是本地化字符串无法工作时首先要检查的内容。

+0

谢谢,但也已经检查这两个文件了几次。有没有想通了这一点尚未 – Patrick 2011-04-25 08:27:11

2

想通了我的应用程序。

我使用的是ShareKit。 Sharekit自带Localizable.strings。在运行时,可能会出现使用哪一个的冲突。

如果您的应用程序有一个以上的字符串文件被复制,删除等。

http://iphoneincubator.com/blog/open-source/sharekit