我想本地化“ 1 of 9”,并且1和9是int参数,我的代码如下
context = [NSString stringWithFormat:NSLocalizedString(@"%d of %d",
"This text will be used to show page number on the screen"),
currentPageIndex + 1, pageCount];
生成的Localizable.strings显示如下
/* This text will be used to show page number on the screen */
"%d of %d" = "%1$d of %2$d";
我认为“ =”左边的东西是键,而“ =”右边的东西是值,但是我希望键看起来像“ show_page_number”,不包含格式“%d”,我该怎么办?我尝试将“%d的%d”替换为“ show_page_number”,但是它不起作用。有什么建议吗?
最佳答案
NSLocalizedString()在运行时将键替换为值。因此,您可以将anystring用作键,并且在运行时将其替换为“%1 $ d of%2 $ d”。
在可本地化文件中添加字符串:
"show_page_number" = "%1$d of %2$d";
&在代码中使用该键
context = [NSString stringWithFormat:NSLocalizedString(@"show_page_number", "This text will be used to show page number on the screen"), currentPageIndex + 1, pageCount];
在xcode项目中添加localizable.string文件。
关于ios - Localizable.strings键值对,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44961494/