walch
28.08.2008, 17:11
По описанию в справке получается отличный класс который даже умеет автоматически заменять тексты после смены языка. Но при попытке им воспользоваться возникла проблема...
import fl.lang.Locale;
Locale.addXMLPath("ru", "locale/lang_ru.xml");
Locale.addXMLPath("en", "locale/lang_en.xml");
// Включаем автозамену при загрузке XML-файла с языком
Locale.autoReplace = true;
// Добавляем текстовое поле в список тех которые надо автозаменять
Locale.addDelayedInstance(txt, "IDS_STR");
// Грузим язык
Locale.loadLanguageXML("ru");
Всё срабатывает отлично - в поле появляется текст на русском.
Добавим 2 кнопки. Описывать их код не буду, так как он не имеет значения, а место занимает.
Одна кнопка делает - Locale.loadLanguageXML("en");
Другая, соответственно - Locale.loadLanguageXML("ru");
Так вот. Если нажать на кнопку которая грузит английский, то текст в поле поменяется! Но вот обратно на русский уже нет!
Соответственно, если загрузить сначала "en", то переключение стработает один раз на "ru", а обратно - нет.
Кто-нибудь сталкивался?
P.S. Похоже что замена происходит только при первой реальной заргузке файла. На второй поптыке он не грузится с сервера, так как уже есть в памяти (хотя все события отрабатывают корректно).
import fl.lang.Locale;
Locale.addXMLPath("ru", "locale/lang_ru.xml");
Locale.addXMLPath("en", "locale/lang_en.xml");
// Включаем автозамену при загрузке XML-файла с языком
Locale.autoReplace = true;
// Добавляем текстовое поле в список тех которые надо автозаменять
Locale.addDelayedInstance(txt, "IDS_STR");
// Грузим язык
Locale.loadLanguageXML("ru");
Всё срабатывает отлично - в поле появляется текст на русском.
Добавим 2 кнопки. Описывать их код не буду, так как он не имеет значения, а место занимает.
Одна кнопка делает - Locale.loadLanguageXML("en");
Другая, соответственно - Locale.loadLanguageXML("ru");
Так вот. Если нажать на кнопку которая грузит английский, то текст в поле поменяется! Но вот обратно на русский уже нет!
Соответственно, если загрузить сначала "en", то переключение стработает один раз на "ru", а обратно - нет.
Кто-нибудь сталкивался?
P.S. Похоже что замена происходит только при первой реальной заргузке файла. На второй поптыке он не грузится с сервера, так как уже есть в памяти (хотя все события отрабатывают корректно).