Локализуйте UIDatePicker "Сегодня" метка - PullRequest
2 голосов
/ 12 октября 2011

Как я могу локализовать метку "сегодня" в режиме даты и времени UIDatePicker?

Мне нужен русский, поэтому я установил UIDatePicker локаль, установил регион и язык в настройках устройства, установилСвойство «Регион локального развития локализации» и «Локализации» в info.plist имеют значение «ru», но это не имело никакого значения - все метки месяца и дня являются русскими, но метка «сегодня» по-прежнему «сегодня».

Ответы [ 3 ]

2 голосов
/ 06 марта 2013

С помощью следующего кода локализован весь текст в средстве выбора даты, включая строку «Сегодня»:

//Localizing the datepicker
    NSLocale * locale = [[NSLocale alloc] initWithLocaleIdentifier:NSLocalizedString(@"en_US",nil)];
    datePicker.locale = locale;
    datePicker.calendar.locale = locale;

Здесь я использую NSLocalizedString для замены «en_US» (ключ) с соответствующим идентификатором (значением) локали. Это делается с помощью соответствующего Localizable.strings файла для этой конкретной локали / языка, в который необходимо добавить:

/*==== Locale identifier ====*/   
"en_US"="it_IT";

Я использовал итальянский (Италия) здесь.

1 голос
/ 29 ноября 2012

Да, есть два компонента для локализации.первый - это ваш strings.lproj fie, который содержит ваши пары ключ-значение для каждого языка, а второй, и не менее важный, - локализованные xib или раскадровкиЭти два файла автоматически связаны друг с другом XCode.Итак, вам необходим файл ru.lproj localizable.strings, а также локализованный русский Xib в вашем случае.

1 голос
/ 17 октября 2011

Проблема была решена путем создания локализованного ресурса .xib (просто добавьте локализацию в IB в .xib с datePicker и больше ничего не делайте).

Может кто-нибудь объяснить, почему?

...