Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>As of iOS 7, Foundation framework has <a href="https://developer.apple.com/library/mac/releasenotes/Foundation/RN-Foundation/#//apple_ref/doc/uid/TP30000742-CH2-SW56" rel="noreferrer">native support for pluralization.</a> Here is a quick tutorial how to use it:</p> <p>Create a plist file named as <strong>Localizable.stringsdict</strong></p> <p>English Localization:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&gt; &lt;plist version="1.0"&gt; &lt;dict&gt; &lt;key&gt;%d tasks waiting for action&lt;/key&gt; &lt;dict&gt; &lt;key&gt;NSStringLocalizedFormatKey&lt;/key&gt; &lt;string&gt;%#@tasks@ waiting for action&lt;/string&gt; &lt;key&gt;tasks&lt;/key&gt; &lt;dict&gt; &lt;key&gt;NSStringFormatSpecTypeKey&lt;/key&gt; &lt;string&gt;NSStringPluralRuleType&lt;/string&gt; &lt;key&gt;NSStringFormatValueTypeKey&lt;/key&gt; &lt;string&gt;d&lt;/string&gt; &lt;key&gt;one&lt;/key&gt; &lt;string&gt;A task is&lt;/string&gt; &lt;key&gt;two&lt;/key&gt; &lt;string&gt;Two tasks are&lt;/string&gt; &lt;key&gt;other&lt;/key&gt; &lt;string&gt;%d tasks are&lt;/string&gt; &lt;/dict&gt; &lt;/dict&gt; &lt;/dict&gt; &lt;/plist&gt; </code></pre> <p>Polish Localization:</p> <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&gt; &lt;plist version="1.0"&gt; &lt;dict&gt; &lt;key&gt;%d tasks waiting for action&lt;/key&gt; &lt;dict&gt; &lt;key&gt;NSStringLocalizedFormatKey&lt;/key&gt; &lt;string&gt;Masz %#@zadanie@ do zrobienia&lt;/string&gt; &lt;key&gt;zadanie&lt;/key&gt; &lt;dict&gt; &lt;key&gt;NSStringFormatSpecTypeKey&lt;/key&gt; &lt;string&gt;NSStringPluralRuleType&lt;/string&gt; &lt;key&gt;NSStringFormatValueTypeKey&lt;/key&gt; &lt;string&gt;d&lt;/string&gt; &lt;key&gt;one&lt;/key&gt; &lt;string&gt;jedno zadanie&lt;/string&gt; &lt;key&gt;few&lt;/key&gt; &lt;string&gt;%d zadania&lt;/string&gt; &lt;key&gt;other&lt;/key&gt; &lt;string&gt;%d zadań&lt;/string&gt; &lt;/dict&gt; &lt;/dict&gt; &lt;/dict&gt; &lt;/plist&gt; </code></pre> <p>And finally in your implementation file, you can call the dictionary like this:</p> <pre><code>cell.tasksInfoLabel.text = [NSString localizedStringWithFormat:NSLocalizedString(@"%d tasks waiting for action", @"%d tasks waiting for action"), (long)taskCount]; </code></pre> <p>EDIT: Thanks <a href="https://stackoverflow.com/users/842327/zaphod">Zaphod</a> for pointing this out ->: <em>You also need to create the Localizable.strings file alongside the .stringsdict to have the pluralization work (even if it's empty).</em></p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload