【问题标题】:NSLocalizedString weird warningNSLocalizedString 奇怪的警告
【发布时间】:2011-07-02 12:59:13
【问题描述】:

我正在尝试将我的应用本地化为英语和意大利语。

我得到了这部分代码:

-(IBAction)randomSN{
int text = rand() % 2;
switch (text) {
    case 0:
        textview.text =NSLocalizedString(@"YES", @"Sì");
        break;
    case 1:
        textview.text = NSLocalizedString("@NO", @"No");
        break;
    default:
        break;
  }
}

当我进入 Build and Run 时,会出现一些警告:

warning: passing argument 1 of 'localizedStringForKey:value:table:' from incompatible pointer type

我认为它说它需要一张桌子才能工作,还是?警告只显示在第二部分,当它说

            textview.text = NSLocalizedString("@NO", @"No");

另外,当我运行项目时,模拟器设置为英语(应用程序的主要语言是意大利语),我在 Localizable.strings 中输入的内容不会出现。

【问题讨论】:

    标签: objective-c localization ios4 xcode4


    【解决方案1】:

    您确定@ 的位置正确吗?在我看来应该是:

    textview.text = NSLocalizedString(@"NO", @"No");
    

    换句话说,@ 应该出现在 开头 " 之前。

    【讨论】:

    • 是的,那是我的错误。非常感谢!顺便说一句,任何想法为什么它在模拟器中不起作用?如您所见,我有一个动作可以随机化单词。我已将翻译插入 Localizable.strings(英语)和(意大利语),但它一直显示意大利语。
    • 编辑 - 现在它工作了,我必须更好地检查字符串。感谢您的帮助!
    猜你喜欢
    • 2012-03-04
    • 2011-12-08
    • 1970-01-01
    • 2012-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-07
    相关资源
    最近更新 更多