gpt4 book ai didi

iphone - 如何找到本地化目录的路径?

转载 作者:可可西里 更新时间:2023-11-01 04:16:52 29 4
gpt4 key购买 nike

我需要在我的应用程序中分发一个包含 html 文件和图像的目录。

该应用程序支持不同的语言。我为每种语言创建了一个目录,然后根据当前语言环境选择正确的:

NSString *language = [[NSLocale preferredLanguages] objectAtIndex:0];
NSString *path = [[NSBundle mainBundle] pathForResource:@"index"
ofType:@"html"
inDirectory:[language stringByAppendingPathExtension:@"html"];];

if (![[NSFileManager defaultManager] fileExistsAtPath:path])
{
// Fallback to english
path = [[NSBundle mainBundle] pathForResource:@"index"
ofType:@"html"
inDirectory:@"en.html"];
}

我怎样才能更好地处理这个问题而不是必须执行上述操作(这有点困惑)?

我在想也许可以为此使用 xx.lproj 目录并在每个 xx.lproj 目录中放置一个本地化的 html 目录 并使用 NSBundle pathForResource 找到正确的文件。虽然无法让它工作。

最佳答案

xx.lproj 文件夹与[NSBundle pathForResource:ofType:] 一起使用非常简单。

您可以将 index.html 添加到您的 Xcode 项目文件中,然后通过“获取信息”窗口使其可本地化。添加另一种语言,如“de”,Xcode 会将 index.html 复制到新创建的 de.lproj 中。如果您删除该文件,该应用程序将退回到英文版本。

你可以用日志来测试它:

NSLog([[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]);

关于iphone - 如何找到本地化目录的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5880937/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com