NSLog始终打印我的密钥而不是我的翻译

时间:2014-07-17 11:29:36

标签: objective-c localization

我正在创建一个像这样的NSError:

    NSMutableDictionary* details = [NSMutableDictionary dictionary];
    [details setValue:@"REQUEST_UNKNOWN_CONVERT_FOR_ENDPOINT" forKey:NSLocalizedDescriptionKey];
    NSError * error = [NSError errorWithDomain:DOMAIN code:200 userInfo:details];

其中REQUEST _...是我的翻译文件中的密钥(Localizable.strings)。

当我收到错误时,我会尝试打印它:

  NSLog(@"%@", [error localizedDescription]);

它只打印我的REQUEST_UNKNOWN ...(我的键)而不是我的翻译。

我做错了吗?

1 个答案:

答案 0 :(得分:4)

[details setObject:NSLocalizedString(@"REQUEST_UNKNOWN_CONVERT_FOR_ENDPOINT", Nil) forKey:NSLocalizedDescriptionKey];

您必须将value作为localizedString放置,而将其添加为标准NSString。