iOS本地化不加载语言

时间:2012-12-24 09:41:11

标签: objective-c ios cocoa-touch localization

今天我想试试iOS的localization功能。 我在项目中添加了Localizable.strings文件,其中包含以下内容:

"TP_Start_Button" = "Workout Plan";
"TL_Start_Button" = "Training Log";
"Calc_Start_Button" = "Calculator";

我设置了三个UIButtons的标题:

- (void)viewDidLoad
{
    [super viewDidLoad];

    [self.tp_start_button setTitle:NSLocalizedString(@"TP_Start_Button", nil) forState:UIControlStateNormal];
    [self.tl_start_button setTitle:NSLocalizedString(@"TL_Start_Button", nil) forState:UIControlStateNormal];
    [self.calc_start_button setTitle:NSLocalizedString(@"Calc_Start_Button", nil) forState:UIControlStateNormal];
}

之后我通过选择我的项目并按下本地化下的“+”按钮添加了另一种语言。 O选择德语,另一个Localizable.strings被创建。我用德语翻译替换了内容。然后我有以下内容:

Localizable.strings
    Localizable.strings (English)
    Localizable.strings (German)

在我的项目文件夹中,文件夹de.lprojen.lproj 是在里面Localizable.strings创建的。

然而,启动iPhone模拟器后,英文 被加载为默认语言。将语言设置为德语后,我的应用程序的语言没有改变。即使从我的删除并重新安装应用程序 设备它不起作用。

当更改设置中的语言时,如何自动切换语言?

2 个答案:

答案 0 :(得分:2)

正如我的评论中所述,Clean&重建将解决问题。

对于本地化功能,您必须经常clean & rebuild,因为此功能由XCode缓存。

答案 1 :(得分:0)

您是否将localizable.strings添加到目标?