1

我正在浏览此页面以了解如何处理复数。

https://developer.apple.com/library/ios/documentation/MacOSX/Conceptual/BPInternational/LocalizingYourApp/LocalizingYourApp.html#//apple_ref/doc/uid/10000171i-CH5-SW10

我添加了一个包含以下内容的english.stringsdict。

<plist version="1.0">
    <dict>
        <key>%d file(s) remaining</key>
        <dict>
            <key>NSStringLocalizedFormatKey</key>
            <string>%#@files@</string>
            <key>files</key>
            <dict>
                <key>NSStringFormatSpecTypeKey</key>
                <string>NSStringPluralRuleType</string>
                <key>NSStringFormatValueTypeKey</key>
                <string>d</string>
                <key>one</key>
                <string>%d file remaining</string>
                <key>other</key>
                <string>%d files remaining</string>
            </dict>
        </dict>
    </dict>
</plist>

我已将文件检查器中的本地化属性设置为英语我有一个 Localizable.strings 也设置为英语,其中包含以下内容。

/* Message shown for remaining files */
"%d file(s) remaining" = "%d file(s) remaining";

我已将架构中的应用程序语言设置为英语。

我正在设置这样的标签文本

self.label.text = [NSString localizedStringWithFormat:NSLocalizedString(@"%d file(s) remaining", @"Message shown for remaining files"), count];

显示的是“剩余 5 个文件”

我要显示的是剩余 5 个文件或剩余 1 个文件(如果有一个文件)。

4

1 回答 1

0

Localizable.strings 中的键不能与 Localizable.stringsdict 中的键相同。系统首先查看 Localizable.strings,如果未找到密钥,则查看 Localizable.stringsdict。

解决方案:只需删除

/* Message shown for remaining files */
"%d file(s) remaining" = "%d file(s) remaining";

来自 Localizable.strings

于 2015-09-03T08:46:02.570 回答