【发布时间】:2012-03-04 07:16:51
【问题描述】:
我制作了一个名为“Localizable.strings”的字符串文件,并向其中添加了两种语言,如下所示:
"CONNECTIONERROR" = "Check that you have a working internet connection.";
"CONNECTIONERRORTITLE" = "Network error";
我还将文件转换为 Unicode UTF-8 但是,当我像这样创建 UIAlertView 时:
UIAlertView *myAlert = [[UIAlertView alloc]
initWithTitle:NSLocalizedString(@"CONNECTIONERRORITLE",nil)
message:NSLocalizedString(@"CONNECTIONERROR",nil)
delegate:self
cancelButtonTitle:@"Ok"
otherButtonTitles:nil];
警报视图仅显示键文本,而不显示值。例如,如果我将 UITextviews 文本设置为 NSLocalizedString(@"CONNECTIONERROR",nil),它会起作用,但警报视图仅显示密钥。有谁知道怎么回事?
【问题讨论】:
-
NSLocalizedString()如果找不到键/值对,则返回键。 -
对不起,我没有复制/粘贴代码,所以它是一个类型-o。然而,我的应用程序中的代码是正确的。
-
发现问题。它在 iPhone 模拟器中对我不起作用,所以我在实际设备上对其进行了测试,它确实有效。
-
看看这个How to Answer[1],它可能会有所帮助。 [1]:stackoverflow.com/a/8972349
-
不要害怕在键中使用下划线或空格。
标签: ios xcode uialertview nslocalizedstring localizable.strings