过去两天我一直陷入与本地化有关的神秘问题。 我正在尝试为我的应用添加语言,但在我看来,出现了问题。
为简单起见,我在当前的应用程序中添加了以下行,以查看单词test是否会翻译:
- (void)viewDidLoad { [super viewDidLoad]; UILabel *lbl1 = [[UILabel alloc] init]; [lbl1 setFrame:CGRectMake(0,5,100,20)]; lbl1.textColor=[UIColor blackColor]; [self.view addSubview:lbl1]; lbl1.text= NSLocalizedString(@"test", nil); }
在“项目信息”部分的本地化部分添加语言,然后选中“基于使用的国际化”。除了创建“Localizable.strings”文件并单击Localize以选择语言外,单词test还没有翻译。
BTW,这是Localizable.strings
档案:
"test" = "test translated";
我已经干净了,并从我的手机中删除了应用程序并再次构建它,但没有任何改变!
我使用了相同的代码,并通过在xCode上创建一个新项目完成了相同的步骤,令人惊讶的是它进行了翻译!
任何人都知道为什么翻译不会发生在我原来的应用程序中?
答案 0 :(得分:0)
首先, Base Internationalization 适用于故事板,不适用于NSLocalizedString
。
其次,该文件应为 Localizable.strings ,而不是 Localization.strings 。
答案 1 :(得分:0)
最近我很开心。我做了那些事:
1)从模拟器/ iPhone
删除了应用程序2)清理过的应用程序(产品 - >清洁)
3)删除派生数据(窗口 - >管理器 - >项目(标签) - >(从左侧选择自己的项目) - >点击派生数据右侧的“删除...”
它帮助了我