Формат файла Stringsdict

A .stringsdict файл является списком свойств, используемым для определения правил множественного числа языка.

Свойства локализованной строки

Каждая пара ключ/значение в .stringsdict файл определяет множественное правило для определенной строки, как в:

<plist version="1.0">
    <dict>
        <key>%d file(s) remaining</key>
        <dict>
        </dict>
        <key>%d service hour(s)</key>
        <dict>
        </dict>
        <key>%d award(s)</key>
        <dict>
        </dict>
    </dict>
</plist>

Вы передаете те же строки — например, @”%d file(s) remaining”, @”%d service hour(s)” и @”%d award(s)”— к a NSLocalizedString макрос в Вашем коде.

Локализованные свойства строки формата

Множественное правило определяет строку формата, возвращенную NSLocalizedString макрос. Вы предоставляете строку формата для каждой категории чисел, которые определяет язык. Значение этого словаря имеет следующие ключи:

NSStringLocalizedFormatKey

Строка формата, содержащая переменные. Переменной предшествуют %#@ символы и сопровождаемый @ символ, как в:

            <key>NSStringLocalizedFormatKey</key>
            <string>%#@files@</string>

где имя переменной files. Строка формата может содержать многократные переменные, как в %#@files@ (%#@bytes@, %#@minutes@).

[variable]

Словарь пар ключ/значение, указывающих правило использовать для [variable], как в:

            <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>

Например, если число равняется 2, @”%d files remaining” строка формата возвращается, и локализованная строка становится @”2 files remaining”.

Добавьте множественные правила для каждой переменной, появляющейся в NSStringLocalizedFormatKey строка формата.

Множественные свойства правила

[variable] словарь содержит следующие ключи:

NSStringFormatSpecTypeKey

Указывает тип правила языка. Единственное возможное значение NSStringPluralRuleType, который указывает правило множественного числа языка.

NSStringFormatValueTypeKey

Спецификатор формата строки для числа, как в %d для целого числа. Для списка спецификаторов формата посмотрите Спецификаторы Формата строки в Строковом Руководстве по программированию.

zero

Строка формата для использования для номера 0.

one

Строка формата для использования для номера 1.

two

Строка формата для использования для номера 2.

few, many

Строки формата для использования для дополнительных языковозависимых категорий.

other

Строка формата для использования для всех чисел, не покрытых другими категориями. Этот ключ требуется.

Для множественных категорий и правил для каждого языка, см. Правила Множественного числа Языка CLDR.