Как локализовать кнопки "Назад"?
Я переводил приложение на индонезийский. В раскадровке используется навигационный контроллер и нажимается на все его виды. Когда я перехожу к виду из главного меню, кнопка возврата вернется правильно, но когда я перехожу к просмотру (два вида в главном меню), кнопка "Назад" говорит "Назад". Заранее благодарим за помощь.
Ответы
Ответ 1
Пожалуйста, проверьте в своем "приложении" -Инфо. установите параметр "Локализация области разработки" и измените язык по умолчанию на "id" для индонезийского. Как отмечалось на других сайтах, это влияет на язык на стандартных кнопках iOS, таких как "Редактировать" или "Готово".
см. Как изменить название кнопки UITabBarController More? или здесь: http://developer.appcelerator.com/question/10451/change-the-language-of-native-buttons-
Ответ 2
В любом случае, чтобы изменить заголовок кнопки "Назад", вы должны учитывать, что вам нужно адресовать PARENT-Controller, а не контроллер представления деталей.
Прежде чем вы нажмете дочерний вид на контроллер навигации, возможно, в методе prepareForSegue, сделайте следующее:
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back" style:UIBarButtonItemStyleBordered target:nil action:nil];
[[self navigationItem] setBackBarButtonItem:backButton];
[backButton release];
}
Ответ 3
Я точно не знаю, в чем проблема, но использование библиотеки AGi18n может помочь. Он заставляет .xibs локализовать в соответствии с файлом localizable.strings. Поэтому, если ваш .xib содержит "назад", и ваши localizable.strings имеют правило для "Назад", он будет локализован.
Theres учебник по использованию библиотеки в нижней части этого учебник по локализации SmoothLocalize.
Ответ 4
Я обнаружил, что если в файле Storyboard был установлен родительский контроллер контроллера navigationItem.backBarButtonItem.title, любые изменения, добавленные позже (например, в нажатом ViewController viewWillAppear), будут проигнорированы. Проверьте, установлен ли родительский контроллер в раскадровке для текста для кнопки "Назад". Локализация self.navigationItem.backBarButtonItem.title в родительском контроллере исправила его для меня.