【发布时间】:2012-11-29 11:41:06
【问题描述】:
每次启动应用程序时,我都会通过 JSON 文件加载翻译。我可以解析那个 JSON,清理它并将它放在 localizable.strings 文件中吗?
如果不能,我能否从 Documents 目录中创建的可本地化文件加载本地化文件?
【问题讨论】:
标签: iphone ios xcode localization localizable.strings
每次启动应用程序时,我都会通过 JSON 文件加载翻译。我可以解析那个 JSON,清理它并将它放在 localizable.strings 文件中吗?
如果不能,我能否从 Documents 目录中创建的可本地化文件加载本地化文件?
【问题讨论】:
标签: iphone ios xcode localization localizable.strings
不是第一个,因为部署后您无法编辑应用资源
但是,您可以告诉 NSBundle 使用不同的 localizeFile.. 或者下载 json 并将其放入 NSBundle
将localizable放入:
<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];
【讨论】:
您无法编辑应用程序包中的任何内容,因此请不要回答您的第一个问题。 (请注意,您可能可以在模拟器中执行此操作,但它肯定无法在设备上运行。)
不确定第二个问题。
【讨论】: