Using multiple lines without a number

The documentation confuses me a bit .stringsdict (go to the "Localized Property List File").

Given the number of files, I want to show Save File or save Save Files accordingly. I thought the following would work, but did not.

In code:

NSString *string = [NSString localizedStringWithFormat:NSLocalizedString(@"%Save Files", @""), (long)files.count];

In Localizable.stringsdict:

<key>Save Files</key>
<dict>
    <key>NSStringLocalizedFormatKey</key>
    <string>Save %#@files@</string>
    <key>files</key>
    <dict>
        <key>NSStringFormatSpecTypeKey</key>
        <string>NSStringPluralRuleType</string>
        <key>NSStringFormatValueTypeKey</key>
        <string>ld</string>
        <key>one</key>
        <string>File</string>
        <key>other</key>
        <string>Files</string>
    </dict>
</dict>

Always shows Save files, regardless of the number.

What am I doing wrong?

+4
source share
3 answers

, . , stringsdict, . , @ "% ", @ " % ld File (s)". % ld - , Xcode , .

Localizable.stringdict plist :

<key>Save %ld File(s)</key>
<dict>
  <key>NSStringLocalizedFormatKey</key>
  <string>%#@files@</string>
  <key>files</key>
  <dict>
    <key>NSStringFormatSpecTypeKey</key>
    <string>NSStringPluralRuleType</string>
    <key>NSStringFormatValueTypeKey</key>
    <string>ld</string>
    <key>one</key>
    <string>Save %ld File</string>
    <key>other</key>
    <string>Save %ld Files</string>
  </dict>
</dict>

/ Localizable.stringdict, :

iOS Stringsdict Plurals Generator

, , . "% # @files @" "% # @files". ? "" (.. 3 ). , .

+2

, "%" NSLocalizedString(@"%Save Files", @"")

+1

%ld NSLocalizesString:

NSString *string = [NSString localizedStringWithFormat:NSLocalizedString(@"%ld Save Files", nil), (long)files.count];

plist dict :

<key>%ld Save Files</key>
<dict>
    <key>NSStringLocalizedFormatKey</key>
    <string>%ld Save %#@files@</string>
    <key>files</key>
    <dict>
        <key>NSStringFormatSpecTypeKey</key>
        <string>NSStringPluralRuleType</string>
        <key>NSStringFormatValueTypeKey</key>
        <string>ld</string>
        <key>one</key>
        <string>File</string>
        <key>other</key>
        <string>Files</string>
    </dict>
</dict>
-1

Source: https://habr.com/ru/post/1527010/


All Articles