我正在尝试实现一种在应用程序内部更改语言的方法。
我想我已经把一切都弄清楚了,但由于某种原因,文件夹没有装成一捆
我有一个文件夹叫kh.lproj
NSString *path = [[NSBundle mainBundle] pathForResource:newLanguage ofType:@"lproj"];
if ([[NSFileManager defaultManager] fileExistsAtPath:path]) {
bundle = [NSBundle bundleWithPath:path];
DLOG(@"Language: %@ from path %@ (%@)", newLanguage, path, bundle);
}
我的dlog的输出是
(console.app/kh.lproj尚未加载)
在iPhone上和模拟器中(当然有不同的路径)。
我已经检查了.app文件夹和kh.lproj文件夹在那里。(在小写)。
有没有人知道为什么会发生这种情况?如果我试图加载一个不存在的文件,它只是忽略它,不要试图加载它。
编辑
如果它有任何帮助,当我使用loadAndReturnError:(NSError)我得到消息:
NSLocalizedFailureReason=无法找到捆绑包的可执行文件。语法,NSLocalizedDescription=无法加载捆绑包“kh.lproj”,因为无法找到其可执行文件。示例,NSBundlePath=......./A65 E8399 -6CDB-4CAE-9074- 803125 E78 BBA/storeconsole.app/kh.lproj
此错误消息是什么意思
2条答案
按热度按时间plicqrtu1#
打电话的时候,我好像得到了我想要的东西
xqnpmsa82#
当字符串文件有错误时,例如缺少分号或注解标记不完整,也可能是一个陷阱。
Xcode不检查文件的语法错误。