1

问题 1:我正在关注http://pinkstone.co.uk/how-to-localize-your-project-in-xcode-4-4/为我的 hello world 项目创建本地化字符串。本地化无法工作,直到我将文件名从 Localized.strings 更改为 Localizable.strings。似乎只有文件“Localizable.strings”被识别?在我的实际项目中,我想要几个不同模块的字符串文件,那我该怎么办?

问题2:现在我正在尝试本地化一个静态库项目。我按照上面的确切步骤并使用 Localizable.strings 作为文件名。这些文件被添加到库项目中。但是,结果是根本没有本地化的字符串。为什么以及如何解决这个问题?

4

2 回答 2

1

对于问题1,您可以使用函数: NSLocalizedStringFromTable(@"aString", @"fileName", nil)

它返回一个本地化的 NSString,其中 fileName 是一个包含要本地化的字符串的文件。

此外,fileName 的扩展名应为 .strings

于 2012-10-23T04:29:28.137 回答
1

正如您所指出的,NSLocalizedString正在寻找 Localizable.strings。正如 Jim 所说,您可以使用NSLocalizedStringFromTable指定另一个字符串文件。

对于问题 2,这很可能与您的第一个问题有关。如果您将库包含在本身具有 Localizable.strings 文件的项目中,那么将会发生冲突(不幸的是 XCode 不会警告您)并且只有两个 Localizable.strings 文件中的一个会在您的应用程序包。如果是这种情况,解决方案是根据问题 1 的答案使用不同的名称。

于 2012-10-23T10:16:34.030 回答