我有一个 stringdict 和下面的句子我想翻译成多种语言:
<key>myKey</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>My friend %#@name@ has %#@count@.</string>
<key>count</key>
<dict>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>one</key>
<string>one dog</string>
<key>other</key>
<string>%d dogs</string>
</dict>
</dict>
我想要的是使用下面的代码来创建我的字符串
let name = "Peter"
let dogs = 3
let myString = String(format: NSLocalizedString("myKey", comment:""), name, dogs)
我原本希望得到“我的 friend 彼得有 3 条狗。”,但我得到了一个错误。因此,也许有人可以提供提示并帮助我,我如何在 dict 中使用字符串,或者也许有另一种方法可以做到这一点?
最佳答案
除了什么Andreas said : 没有字典
%#@name@
格式字符串中的变量,但您可以简单地使用 %@
取而代之的是 Swift 字符串。然后是完整的 stringdict 条目
成为
<key>myKey</key>
<dict>
<key>NSStringLocalizedFormatKey</key>
<string>My friend %@ has %#@count@.</string>
<key>count</key>
<dict>
<key>NSStringFormatValueTypeKey</key>
<string>d</string>
<key>NSStringFormatSpecTypeKey</key>
<string>NSStringPluralRuleType</string>
<key>one</key>
<string>one dog</string>
<key>other</key>
<string>%d dogs</string>
</dict>
</dict>
关于ios - 数字和名称的复数化(swift stringsdict),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49810838/