6

每次启动应用程序时,我都会通过 JSON 文件加载翻译。我可以解析那个 JSON,清理它并将它放在 localizable.strings 文件中吗?

如果没有,我能否从 Documents 目录中创建的可本地化文件加载本地化?

4

2 回答 2

6

没有第一个,因为部署后您无法编辑应用资源

但是,您可以告诉 NSBundle 使用不同的 localizeFile.. 或者下载 json 并将其放入 NSBundle

将可本地化的内容放入:

<APP/DOCUMENTS>/<APPNAME>.bundle/<LANGUAGE_CODE>.lproj/Localizable.strings

初始化一个新的可可包

NSBundle *b = [NSBundle bundleWithPath:@"<APP/DOCUMENTS>/<APPNAME>.bundle/"];

然后在捆绑包上使用它:

 - (NSString *)localizedStringForKey:(NSString *)key value:(NSString *)value table:(NSString *)tableName 

例如

[b localizedStringForKey:@"HIHO" value:nil table:nil];
于 2012-11-29T16:31:40.537 回答
-1

您无法编辑应用程序包中的任何内容,因此请不要回答您的第一个问题。(请注意,您可能可以在模拟器中执行此操作,但它肯定无法在设备上运行。)

不确定第二个问题。

于 2012-11-29T11:44:25.157 回答