Iphone 如何向Constants.h文件添加语言支持?

Iphone 如何向Constants.h文件添加语言支持?,iphone,ios,localization,constants,Iphone,Ios,Localization,Constants,我有一个Constants.h,它包含我的应用程序中使用的所有字符串 #define kGuideTitle @"Guide" #define kSeatingTitle @"Seating" #define kNotesTitle @"Notes" #define kQuestionsTitle @"Questionnaire" #define kTimelineTitle @"Timeline" #define kMessagesTitle @"Messages" 现在我迫切需要本地化该文

我有一个
Constants.h
,它包含我的应用程序中使用的所有字符串

#define kGuideTitle @"Guide"
#define kSeatingTitle @"Seating"
#define kNotesTitle @"Notes"
#define kQuestionsTitle @"Questionnaire"
#define kTimelineTitle @"Timeline"
#define kMessagesTitle @"Messages"
现在我迫切需要本地化该文件以支持多种语言(5种语言)

我已经得到了我需要支持的每种语言的翻译

因此,我从inspector中添加了对
Constants.h
文件的lanugage支持。XCode为每种语言创建了
Constants.h
文件的版本

之后,我编辑了特定语言文件的内容,如下所示

Constants.h(Dutch)

#define kGuideTitle @"Leitfaden"
#define kSeatingTitle @"Sitzplan"
#define kNotesTitle @"Notizen"
#define kQuestionsTitle @"Fragebogen"
#define kTimelineTitle @"Zeitlinie"
#define kMessagesTitle @"Nachrichten"
但是当我在模拟器中运行代码时(模拟器语言设置为荷兰语),我在应用程序中只看到英文版本的文本。为什么会这样

可以本地化任何文件,还是只能本地化localizable.strings文件

(我不想重复将所有内容转移到localizable.strings文件)

有人能帮忙吗


非常感谢。

这是经过编译的代码,以这种方式使用
.h
文件将不允许您在运行时更改语言。

您不能这样做。在代码到达编译器之前的预处理器阶段,将替换
#define
。i、 只有一套语言会被“编译”。您需要使用本地化字符串。

这是荷兰语吗?看起来更像是deutsch(德语)No.如果你想本地化,你可以使用你自己的整个本地化技术(注意:你不能在预处理器阶段完成,必须在运行时完成)。或者你可以使用苹果给你的技术。