|
android многоязычность
|
|||
---|---|---|---|
#18+
Допустим не сложно с помощью if задать несколько вариантов надписей на кнопке. Но как определить какой язык главный на тедефоне клиента? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2014, 10:58 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
для этого есть ресурсы, не нужно изобретать велосипедов. а если хотите узнать текущую то - Locale.getDefault().getLanguage(), например. или гуглить, решений там несколько, все тривиальные. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2014, 12:11 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Джибсдля этого есть ресурсы, не нужно изобретать велосипедов. +1. Для глобального - папка values, для русского - values-ru и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2014, 17:40 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Понял уже спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2014, 17:48 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
ÏîÃВГѓВїГѓВ« óæå ГѓВ±ГѓВЇГѓВ ГѓВ±ГѓВЁГѓВЎГѓВ® ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2014, 20:35 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
В сети нашёл что надо использовать разные values-xx папки Spanish, /values-es/strings.xml: French, /values-fr/strings.xml: А где поглядеть список буквенных сокрашений для различных стран? Израиль к примеру IL или HEB(Hebrew - Иврит) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.07.2014, 17:39 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
stackoverflow.com/questions/7973023/what-is-the-list-of-supported-languages-locales-on-android P.S. Студия сама подсказывает при добавлении values, эклипс с адт тоже должен, по идее. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.07.2014, 19:20 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Спасибо за ссылку. Hebrew, Israel (iw_IL) тоесто преставлять надо только iw или полностью Hebrew, Israel (iw_IL)* ?? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.07.2014, 22:48 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Areostar, не знаю как в эклипсе, вот так это делается в студии: Правая кнопка мыши -> New -> Android resource directory Выбираю Resource type "values", ниже слева добавляю Region и вижу все доступные коды. Тебе нужен iw. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.07.2014, 08:40 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Спасибо за скрин ... |
|||
:
Нравится:
Не нравится:
|
|||
15.07.2014, 15:39 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Есть такой проект dxgettext для локализации приложений. В делфи я его широко использую, есть его версия и под java. Для перевода есть редактор poEdit. Думаю его намного удобнее использовать чем родной андроидный локализатор. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2014, 15:38 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Микола ПитерскийДумаю его намного удобнее использовать чем родной андроидный локализатор. На самом деле вряд-ли. Поясню: в студии достаточно создать что-нибудь отличное от values, например values-ru. Затем в коде просто объявлять любые не существующие переменные вида R.string.action_some_title, жамкать Alt+Enter и спокойно добавлять значение на русском в удобном диалоговом окне. Затем уже, когда код будет более менее правдоподобен конечному виду, можно и values привести к нужному виду (обычно к английскому). ... |
|||
:
Нравится:
Не нравится:
|
|||
28.07.2014, 16:23 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Наверное никогда не пользовались dxgettext? Смысл этого проекта в том что он может выбрать все строковые ресурсы для перевода в отдельный файл, этот файл передается человеку-переводчику, который с помощью poEdit в удобном виде переводит текст (т.е. они видит табличку с 2-мя колонками, слева н-р руские фразы, а справа на том языке, который он переводит), есть там и подгрузка новых данных без потери переведенных, потом из этого редактора выгружается другой файл, который и подключается в программу с помощью своей поддержки, которая автоматически заменяет в памяти программы строковый ресурс (поиск по фразе) на соответствующий перевод. А в андроиде - пробовал в эклипсе - так там что нужно передать переводчику - сами файлы со строковыми ресурсами и у него поедет крыша или же он чего так отредактирует что нарушит структуру. Или я не прав? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2014, 19:05 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
разве переводчику что то нужно давать ? это уже ваша работа, воткнуть тексты в ресурсы. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2014, 22:18 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Микола ПитерскийИли я не прав? dxgettext не видел, но встроенные средства так или иначе равны. Когда-то я писал клон jimm-а и для него была разработана утилита, в которой на мой взгляд наиболее удобно сделана возможность создавать переводы. В ней выбирался оригинал (англ), и дополнялся переводом. Т.е. было три столбца: название переменной (используется в коде), английская версия и перевод. Если dxgettext нечто подобное, то можно глянуть. Остальное, на мой взгляд, не стоит внимания. Особенно выдирающее сообщения из исходных кодов, т.к. там много служебной информации, которая не может быть переведена, таких как log.*, интенты и акции. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 09:17 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
wadmanМикола ПитерскийИли я не прав? dxgettext не видел, но встроенные средства так или иначе равны. Когда-то я писал клон jimm-а и для него была разработана утилита, в которой на мой взгляд наиболее удобно сделана возможность создавать переводы. В ней выбирался оригинал (англ), и дополнялся переводом. Т.е. было три столбца: название переменной (используется в коде), английская версия и перевод. Если dxgettext нечто подобное, то можно глянуть. Остальное, на мой взгляд, не стоит внимания. Особенно выдирающее сообщения из исходных кодов, т.к. там много служебной информации, которая не может быть переведена, таких как log.*, интенты и акции. Сам редактор переводов смотрите в приложенной картинке. Что выдирать из исходных кодов легко настраивется в файле-включить и в файле исключить. Вот для делфи из файла ggexclude.cfg : [exclude-form-class] TWebBrowser TdxStatusBar TrsPropSaver ; FastReport TfrxReport TfrxBarCodeView TfrxGroupHeader TfrxMasterData TfrxDBDataSet TfrxPictureView TfrxMemoView TfrxReportPage [exclude-file] report.dfm Wizard.dfm [exclude-dir] ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 09:59 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Плюс dxgettext в том что он выбирает для перевода только уникальные фразы - т.е. если у вас много кнопок с тектом "нажать сюда" - то к переводчику попадет только ОДНА эта фраза. А то что вы надеетесь самостоятельно при помощи онлайн переводчика перевести программу на 20 языков - это все туфта - нужен профессиональный переводчик, а они используют только poEdit. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 10:03 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Микола ПитерскийСам редактор переводов смотрите в приложенной картинке. GNU Gettext for Delphi and C++ Builder к яве не имеет отношения. Микола Питерскийнужен профессиональный переводчик, а они используют только poEdit Боюсь, что это оффтоп в теме про яву и андроид в частности, т.к. это отклонение от стандарта локализации . У указанного ПО слишком узкое направление и до андроида оно не дотягивает, чуть меньше, чем полностью. Не учитывает ни размера экрана, ни его положения, ни способа управления и т.д. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 10:45 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
wadmanМикола ПитерскийСам редактор переводов смотрите в приложенной картинке. GNU Gettext for Delphi and C++ Builder к яве не имеет отношения. Микола Питерскийнужен профессиональный переводчик, а они используют только poEdit Боюсь, что это оффтоп в теме про яву и андроид в частности, т.к. это отклонение от стандарта локализации . У указанного ПО слишком узкое направление и до андроида оно не дотягивает, чуть меньше, чем полностью. Не учитывает ни размера экрана, ни его положения, ни способа управления и т.д. Так ты смотри Gettext for Java - в сети есть пример использования его под Java. В делфи есть свой встроенный локализатор еще со времен делфи7 - так что кое-кто тоже может сказать - что это "отклонение от стандартов". И не понял - причем здесь размер экрана и т.д. (русский текст всегда длиннее иностранного)? Декомпилируй Навител навигатор для АНДРОИДА и увидишь что они используют именно .mo файлы для локализации из этой программы poEdit, а не андроидную стандартную локализацию. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 11:38 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Микола Питерский и увидишь что они используют именно .mo файлы для локализации из этой программы poEdit, а не андроидную стандартную локализацию. дак в чём проблема? Если студия не умеет делать импорт экспорт обычного текстовика-файла с переводом, то это проблема студии. Или умеет? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 11:44 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Микола ПитерскийИ не понял - причем здесь размер экрана и т.д. (русский текст всегда длиннее иностранного)? Я-же привел ссылку. Какой смысл продолжать беседу, если не известны даже азы? Хинт: в андроиде встроенный механизм автовыбора необходимых ресурсов. Условия их выбора можно подсмотреть по ссылке или на картинке ниже. Грубо говоря подключаемый языковой ресурс может зависеть от всех перечисленных условий. Например с ландшафте подхватится полный текст, а в портрете - сокращенный и т.д. Навител не лучший пример ПО для андроида, его явно писали с оглядкой на поддержу для большого брата. Тут он придаток, а не основной проект. Как и 2гис. Оба этих приложения стоило с самого начала писать с оглядкой не на ББ, а на целевое устройство. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 11:47 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
wadman, Вот нагуглил: http://www.alek.ws/blog/2014/Apr/08/gnu-gettext-in-java.html Добавлю что есть gettext и для PHP - так что это очень удобный проект - просто его надо попробовать и поработать в нем и все "Стандартные" локализации после него идут лесом. poEdit - это не просто редактор - это программа-переводчик - т.е. вы один раз переводите фразу и она сохраняется в базе и потом автоматом переводится такая же фраза, ну там много таких класных фишек и это надо пробовать. Файлик .mo - это скомпиленый для одного языка перевод и он затем обрабатывается средством поддержки в соответствующем языке, т.е. могут автоматически заменяться фразы, найденные в этом файле или же принудительно через функцию _("Привет мой свет!"). ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 11:54 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
wadmanХинт: в андроиде встроенный механизм автовыбора необходимых ресурсов. Условия их выбора можно подсмотреть по ссылке или на картинке ниже. Грубо говоря подключаемый языковой ресурс может зависеть от всех перечисленных условий. Например с ландшафте подхватится полный текст, а в портрете - сокращенный и т.д. Ну так это и хорошо - у тебя есть стандартный файл локализации ТОЛЬКО для русского языка для портрета и ланшафта. Н-р "Выводит список" и "Вывод списка с подробной информацией". При повороте экрана грузится сотвествующий ресурс, затем срабатывает поддержка gnugettext и переводит эти соотвесттвующие фразы. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 12:05 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
Микола ПитерскийПри повороте экрана Чтобы прикрутить левую фичу мне придется писать больше кода: 1. Загрузка текстов, что в свою очередь меня лишает использования методов, где указывается идентификатор строки. 2. Обработка смены конфигурации, где еще и определять при каких условиях какой файл подгружать. С этим прекрасно сам андроид справляется, лучше чем большинство начинающих программистов для андроида. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 12:31 |
|
android многоязычность
|
|||
---|---|---|---|
#18+
wadmanМикола ПитерскийПри повороте экрана Чтобы прикрутить левую фичу мне придется писать больше кода: 1. Загрузка текстов, что в свою очередь меня лишает использования методов, где указывается идентификатор строки. 2. Обработка смены конфигурации, где еще и определять при каких условиях какой файл подгружать. С этим прекрасно сам андроид справляется, лучше чем большинство начинающих программистов для андроида. 1. Никто не запрещает по прежнему использовать идентификатор строки 2. Обрабатывать ничего не надо - андроид сам это сделает - тут вмешательство минимально - в событии старта активности вызываем метод gnutext который определит язык в системе и он сам будет знать какой файлик (класс жавы) подгрузить, затем когда все ресурсы загрузятся вызывам другую функцию, которая и выполнит перевод всех строковых ресурсов, эту же функцию вызываем н-р в событии поворота устр-ва. Можете использовать попрежнему строковые ресурсы, а можно и без них _('Привет'). Так что вмешаетельства в ваш код тут вообще минимальны. Если кто смог с эклипса перелезть на студию - то легко сможет освоить и эту систему. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2014, 12:53 |
|
|
start [/forum/topic.php?fid=13&msg=38709831&tid=1331416]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 15ms |
total: | 153ms |
0 / 0 |