iOS – 我可以在运行时更改localizable.strings内容吗?
每次启动应用程序时,我都会通过JSON文件加载翻译。 我可以解析那个JSON,清理它并将它放在localizable.strings文件中吗?
如果没有,我是否可以从Documents目录中创建的可本地化文件加载本地化?
没有第一个,因为您无法在部署后编辑应用程序资源
但是你可以告诉NSBundle使用不同的localizeFile ..或者更确切地说下载json并将它放在NSBundle中
将localizable放入:
/.bundle/.lproj/Localizable.strings
初始化一个新的cocoa包
NSBundle *b = [NSBundle bundleWithPath:@"/.bundle/"];
然后在捆绑上使用它:
- (NSString *)localizedStringForKey:(NSString *)key value:(NSString *)value table:(NSString *)tableName
例如
[b localizedStringForKey:@"HIHO" value:nil table:nil];
您无法编辑应用程序包中的任何内容,因此不能对您的第一个问题进行编辑。 (请注意,您可以在模拟器中执行此操作,但它肯定无法在设备上运行。)
不确定第二个问题。