2012-12-24 37 views
6

我有一个“错误”消息的应用程序。我想翻译这个错误信息。iOS本地化(Localizable.strings)不工作

好吧,首先我创建了一个名为“Localizable.strings”的文件。在该文件中我写道:

"ERR" = "Error"; 

然后在我的.m文件我写道:

self.label1.text = NSLocalizedString(@"ERR", nil); 

,这是行不通的。我也尝试过(当然)使文件本地化并添加更多语言。但它不会工作。

+0

你把字符串文件到本地化的资源文件夹? – Abizern

+0

你是如何在项目中添加Localizable.strings的?你是否浏览了“新建/文件...”对话框,并在“iOS /资源”选项卡下选择了“字符串文件”? – dasblinkenlight

回答

22

按照以下tutorial创建语言文件,比填充他们做followihg后:

  1. 做超净(功能键+ SHIFT + K)
  2. 重建
  3. 您的应用
  4. 再次安装您的应用程序
+0

“ultraclean”是什么意思?从模拟器或项目中删除我的应用程序? –

+0

对不起,我没看过教程。 (iPad的bug) –

+1

功能键+ shift + k - 做超清洁(清理所有目标) – Misha

0

如果按以下方式使用它,会发生什么情况。

self.label1.text = [NSString stringWithFormat:@"%@",NSLocalizedString(@"ERR", nil)]; 
7

我有同样的问题。我盯着它几天,直到我偷看应用程序包,并看到我的.strings文件没有被复制...

解决方案是创建一个构建阶段来复制字符串文件:(改编自here

  1. 转至目标\编阶段
  2. 点击“添加构建阶段”按钮,选择“复制文件”
  3. 在“复制文件”中选择“资源”相
  4. 添加Localizable.strings任何项目中的其他字符串文件。

TADA!

1

下面提到的步骤可以帮助你:

  1. 选择在截图1
  2. 选择在Xcode中的左窗格中的文件“新建文件”通过右键点击
  3. 出现一个窗口,为节目“字符串“文件
  4. 重命名文件‘Localizable.strings’截图中显示为2
  5. 添加所需的文本文件格式如下: ‘newStringItem’=”这是新的String项目“;

  6. 现在文件内容可以用作NSLocalizedString(@“newStringItem”,@“”),它返回相应的字符串。

Vola!完成本地化!

Screenshot 1

Screenshot 2