Просматривая ряд примеров, касающихся NSLocalizedString, я обнаружил, что нам нужно предварительно определить всю строку в файле Localized.string для любого языка, который вы хотите локализовать. Но можно ли локализовать динамическую строку. Моя идея заключалась в том, что я показываю несколько текстов в UILabel, которые я получаю после веб-запроса. Это означает, что строка теперь является динамической по своей природе.
Локализация динамического NSString
comment
Вы пробовали погуглить язык, переводящий частный API ..?
- person Nitin Gohel   schedule 21.01.2013
Ответы (4)
Объявить в Localizable.strings
"SAMPLE_LOCALIZE_STRING" = "This is sample dynamic localize string for %@.";
Используйте это так
NSString *dynamicStr = @"Test";
label.Text = [NSString stringWithFormat:NSLocalizedString(@"SAMPLE_LOCALIZE_STRING", nil), dynamicStr];
person
Amit Battan
schedule
21.01.2013
Если эти строки являются фиксированными (я имею в виду ограниченное количество опций), то предварительно сохраните их в локализованном строковом файле.
Если нет, я бы предложил добавить в ваш запрос параметр, указывающий язык, и тогда сервер вернет строку на этом языке.
person
Akshay Shah
schedule
21.01.2013
Обычно я сохраняю строку после ее получения. Итак, дело в том, что мне нужно сделать это в автономном режиме (локально).
- person Black Tiger; 21.01.2013
Даже если вы сохраните его после получения, это не будет иметь значения. Либо он должен быть в plist, чтобы автоматически получить локализованную строку. В противном случае вам нужно будет получить локализованную строку с сервера, поскольку даже если вы сохраните строку, она будет где-то еще, а не в файле локализованной строки.
- person Akshay Shah; 21.01.2013
Я обработал эту ситуацию следующим образом,
Включите язык в запрос. Например: http://yourIp/language/notesandcondition
Веб-сервис должен быть разработан для работы с разными языками.
person
KingofBliss
schedule
21.01.2013
person
schedule
Обычно я сохраняю строку после ее получения. Итак, дело в том, что мне нужно сделать это в автономном режиме (локально).
- person Black Tiger; 21.01.2013
Вы можете добавить локализованную строку в показанном выше формате в автономном режиме, и это будет динамически работать, как только мы получим данные.
- person Madhu; 21.01.2013