2

今天想试试localizationiOS的功能。我在我的项目中添加了一个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.lproj,这些文件夹en.lproj 是用Localizable.strings里面创建的。

但是,在启动 iPhone 模拟器后,英语被加载为默认语言。将语言设置为德语后,我的应用程序的语言没有改变。即使从我的设备删除并重新安装该应用程序后,它也无法正常工作。

更改设置中的语言时,我需要做什么才能自动切换语言?

4

2 回答 2

2

正如我在评论中所述,Clean & Re-build 将解决问题。

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

于 2012-12-24T10:00:12.717 回答
0

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

于 2012-12-24T17:33:20.230 回答