Форум программистов, компьютерный форум CyberForum.ru

Objective-C

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Adem
6 / 6 / 0
Регистрация: 17.04.2009
Сообщений: 34
#1

Локализация CLGeocoder - Objective-C

20.06.2012, 16:57. Просмотров 1278. Ответов 5
Метки нет (Все метки)

Задача - получить имя города, в котором находится девайс на английском языке. Использовал такой код:

Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
    CLGeocoder *geoCoder = [CLGeocoder new];
    [geoCoder reverseGeocodeLocation:newLocation completionHandler:
     ^(NSArray* placemarks, NSError* error){
         if (error) NSLog(@"%@", [error localizedDescription]);
         CLPlacemark *placemark = [placemarks objectAtIndex:0];
         [self setCity:[placemark locality]];
     }];
    if ([self.city length] > 0) {
        NSLog(@"City has been founded");
        [self.locationManager stopUpdatingLocation];
    }
}
Так вот, название города я получаю на том языке, который установлен на девайсе.
Вопрос: как можно изменить язык геокодера нативными средствами? Если никак нельзя, тот подскажите плиз идеи, как получить переведённое название города.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.06.2012, 16:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Локализация CLGeocoder (Objective-C):

Локализация - Objective-C
Здравствуйте. Подскажите,пожалуйста, почему не работает локализация в таком простом примере. - (void)viewDidLoad { ; // Do...

Локализация sqlite файла - Objective-C
Здравствуйте, делаю локализацию своего приложения, со строками все ок, а вот с базой данной проблема, справа в файл менеджере на файле базы...

Локализация LaunchImage (xCode) - Программирование iOS
Доброго времени суток! Сразу к сути: Можно ли сделать разные картинки для LaunchImage (статичная заставка до (во время) загрузки...

Локализация - Программирование Android
Доброго времени суток! Сделал приложение, частью которого является небольшая HTML книга. Всё хорошо, но пришло время локализации и не...

Локализация - Java EE
Взаимодействие происходит с БД оракл, при записи данных на русском языке в базу пишутся иероглифы. Подскажите пожалуйста как решить эту...

Локализация - WordPress
Здравствуйте! Пожалуйста выручите, 2 дня мучаюсь. Установил русскую локализацию WordPress и поставил на него Английский шаблон. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
20.06.2012, 22:42 #2
Интересный на самом деле вопрос, нетривиальный.
"Перевести" у Вас врятли получиться, ибо это попросту сложно реализоввать на клиенте.
А как там привязаны системные настройки девайса... Ну это уровень фреймворка, ничего не поделать.
А если не секрет, для чего Вам это? Ведь если пользователь сознательно поменял себе язык, вполне ожидаемо что вся инфа должна быть на выбранном языке, так ведь?
Adem
6 / 6 / 0
Регистрация: 17.04.2009
Сообщений: 34
20.06.2012, 23:57  [ТС] #3
Не для вывода, а для HTTP запроса на сервер. Реализовал свой геокодер, используя Google Geocoder API:
Objective-C
1
2
3
NSURL *requestURL = [NSURL URLWithString:[NSString stringWithFormat:@"https://maps.googleapis.com/maps/api/geocode/json?latlng=%lf,%lf&sensor=true&language=en", newLocation.coordinate.latitude, newLocation.coordinate.longitude]];
NSData *cityName = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:requestURL] returningResponse:nil error:nil];
id jsonObject = [NSJSONSerialization JSONObjectWithData:cityName options:NSJSONReadingMutableContainers error:nil];
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
21.06.2012, 22:44 #4
Синхронные запросы - ай ай ай, очень плохо.
Adem
6 / 6 / 0
Регистрация: 17.04.2009
Сообщений: 34
24.06.2012, 15:35  [ТС] #5
Ответ занимает всего пару строчек, подумал, что не стоит ещё несколько функций делегата NSURLConnection ради них реализовывать...
zulkis
682 / 609 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
24.06.2012, 17:32 #6
Ну упадет приложение у Вас изза того, что запрос долго выполняется, где нибудь, где инет жутко медленный, исправите.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.06.2012, 17:32
Привет! Вот еще темы с ответами:

Локализация - Debian Linux
Добрый день, такая задача, нужно перевести файлы локализации на свой язык, кто что может подсказать. Как переводить файлы я знаю, хочу...

Локализация - JavaScript
Как программно определить из какой страны обращается пользователь к странице и в какой стране находится позьзователь. P.S. Мне в...

локализация - C# ASP.NET
подскажите как осуществить локализацию в asp.net??

Локализация Enum - C# WPF
Здравствуйте, В моём приложении мне понадобилось выводить несколько enumов и возник вопрос их локализации, да и вообще нормального...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
24.06.2012, 17:32
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru