重新排序i18n的字符串格式

时间:2012-04-14 06:06:04

标签: iphone objective-c ios

e.g。

英文:

He used <Str_1> to <Str_2>

和中文:

他对 <Str_2> 使用了 <Str_1>

如何针对下面的代码以不同方式订购这两个String(在代码中生成)?

[NSString stringWithFormat:@"%@ %@ %@ %@",
         NSLocalizedString(@"Part1", nil),     // "He used" -> "他对"
         NSLocalizedString(str_1, nil),
         NSLocalizedString(@"Part3", nil),     // "to" -> "使用了"
         NSLocalizedString(str_2", nil), nil];

我之前发现过一个相关的问题,但不幸的是,我现在找不到了! 解决方法类似%2@&amp; %1@做重新排序,我不确定。

提前致谢!

1 个答案:

答案 0 :(得分:6)

localizable.strings文件中:

"He used %@ to %@" = "他对 %2$@ 使用了 %1$@";

在代码中:

[NSString stringWithFormat: NSLocalizedString(@"He used %@ to %@", nil), 
    str1, str2];

这应该重新排序字符串参数。