UIViewController本地化问题(重复符号_OBJC_IVAR _ $ _)

时间:2011-05-05 05:51:13

标签: objective-c ios4 localization xcode4

我对XCode4中的本地化过程有太多问题:

在我使用文件检查器本地化UIViewController并添加法语和英语之后,我总是遇到一些错误,表示实例或文件是重复的,例如。

duplicate symbol _OBJC_IVAR_$_....

对2个问题中的一个有任何想法吗?

1 个答案:

答案 0 :(得分:3)

Xcode本地化功能复制给定文件,并将每个副本放在相应的语言目录(.lproj)中。这对于依赖于语言的资源(nib文件,文本文件)是有意义的,但您不应该为类执行此操作。否则,您最终会在代码中定义两次相同的类,因此会出现重复的符号。

您应该做的是在实现文件中使用NSLocalizedString…,使用genstrings提取字符串,并将翻译放在相应的语言目录中。

我建议你阅读Apple撰写的Internationalization Programming Topics指南。 Matt Gallagher最近写了一篇关于user interface strings in Cocoa的帖子;你可能也想读它。