多语言复数本地化

multilanguage plural localization

我在我的 iOS 应用程序中实施本地化,但我被复数形式困住了。

我的申请中有两种语言。

当我创建 Localizable.strings 文件时,它们会分配给它们语言,因此每个文件都有一种语言。

现在,当我创建 Localizable.stringsdict 以便我可以处理复数形式时,它似乎没有分配给任何语言,所以我不知道如何在这里处理不同的语言。

谁能帮我理解一下?

已编辑: 我不确定我是否可以提供任何有用的代码,但假设我的 Localizable.stringsdict 文件如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>NumberOfMessages</key>
    <dict>
        <key>NSStringLocalizedFormatKey</key>
        <string>%#@value@</string>
        <key>value</key>
        <dict>
            <key>NSStringFormatSpecTypeKey</key>
            <string>NSStringPluralRuleType</string>
            <key>NSStringFormatValueTypeKey</key>
            <string>d</string>
            <key>one</key>
            <string>You have a new message.</string>
            <key>other</key>
            <string>You have %d new messages.</string>
        </dict>
    </dict>
</dict>
</plist>

我应该在哪里放置另一种语言的翻译?

Select Xcode 导航器中的文件并打开右侧窗格:

单击底部的 "Localize..." 按钮以本地化此文件。

如果您之前已将此项目中的内容本地化,则可以选择将其添加到项目中的每种语言。如果您还没有本地化任何内容,请转到主项目设置并添加本地化:

当您本地化文件时,副本将被放入项目中的各个 *.lproj 目录中。