Специфичные для локали настройки по умолчанию в XCode / iOS - PullRequest
2 голосов
/ 08 февраля 2011

У меня есть приложение для iPhone с Settings.bundle.В этом пакете есть элементы со значениями по умолчанию, которые должны зависеть от локали (например, «Метрические единицы» должны быть «выключены» для США и «включены» для Бразилии и т. Д.)

Есть ли способ сохранить настройки по умолчаниюЛокальнозависимый

Ответы [ 2 ]

3 голосов
/ 02 мая 2011

У меня была похожая проблема несколько дней назад.Из того, что я знаю, невозможно иметь разные значения по умолчанию для разных регионов, поэтому я решил это по-разному.

У меня есть многозначное значение с Default Fahrenheit и Celsius.По умолчанию установлено значение по умолчанию, что означает, что я вычисляю единицу измерения в коде на основе настройки NSLocale

Примерно так:

- (MBUnit)temperatureUnit {
    MBUnit tmp = [ud integerForKey:MBUDKeyTemperatureUnit];
    if (tmp == MBTemperatureDefaultUnit) {
        MBUnit defaultTemperatureUnit;
        BOOL isMetric = [[[NSLocale currentLocale] objectForKey:NSLocaleUsesMetricSystem] boolValue];
        if (isMetric) {
            defaultTemperatureUnit = MBTemperatureCelsiusUnit;
        }
        else {
            defaultTemperatureUnit = MBTemperatureFahrenheitUnit;
        }
        return defaultTemperatureUnit;
    }
    return [ud integerForKey:MBUDKeyTemperatureUnit];
}
0 голосов
/ 08 февраля 2011

Вы смотрели на stringsTable?Вы можете использовать это для своих целей.Также ознакомьтесь с этой документацией

Что вы, безусловно, можете сделать, - это установить значения по умолчанию при первом запуске приложения (или при изменении языкового стандарта)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...