我必须将应用程序开发成四(4)语言(英语,法语,斜体,西班牙语)。

所以,因为我想知道有没有办法在顶部栏中只使用一(1)个生成的一个(1)个生成的语言数据。

示例:

我有seting.xib(.xib文件) 其中有四个标签 查看部分和在此的顶部栏中 nib文件我想要更改标签 根据设置语言的名称 使用一个&唯一的一个nib文件。

所以,请给我合适的解决方案。

这将需要更少的加载时间。

有帮助吗?

解决方案

首先,我不明白为什么你不能简单地在设置标签文本时使用NSLocalizedString,它确实是您想要的,根据设备的语言加载适当的文本版本。 无论如何,我认为你可以找到一些有用的东西

我实际上做了类似的东西,用六种语言而且只有一个单一的笔尖,但在我的情况下,我可以在应用程序内更改语言,所以我需要强行告诉它加载我的本地化版本字符串从特定捆绑包。

这是应该帮助您的确切代码,以防您的问题更像是我的问题,一个简单的nslocalizedstring是不够的:

NSString* path= [[NSBundle mainBundle] pathForResource:[[[NSUserDefaults standardUserDefaults] objectForKey:@"AppleLanguages"] objectAtIndex:0] ofType:@"lproj"];

NSBundle* languageBundle = [NSBundle bundleWithPath:path];

someLabel.text = [languageBundle localizedStringForKey:@"textKey" value:@"" table:nil];
.

由于您可能有多个标签,因此将存储为类属性的路径并在ViewDidLoad中设置,因此您将能够从该类中的任何方法/函数访问它。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top