Показать сообщение отдельно
Старый 22.12.2010, 14:24
armagon вне форума Посмотреть профиль Отправить личное сообщение для armagon Найти все сообщения от armagon
  № 3  
Ответить с цитированием
armagon

Регистрация: Dec 2010
Сообщений: 4
Спасибо что откликнулись.

Цитата:
Сообщение от alatar Посмотреть сообщение
Вы бы сначала проблемы описали.

Если в кратце, то есть некий объект с полями для строк. Поля заполняются из файлов локали. Когда компоненту нужна строка, он запрашивает ее у этого объекта. При смене локали объект шлет событие и компоненты заново считывают строки.
Я использую панель Strings в Flash CS5. В ней создаю идентификаторы для двух языков - русского и английского. После чего назначаю эти идентификаторы (Assign) прямо в среде Flash соответствующим DynamicText объектам. Всё цепляется верно. После этого я экспортирую swc файл и линкую его в мой проект, где и использую MovieClip хранящиеся в swc. Выдает синтаксическую ошибку в классе отнаследованном от Button. А посмотреть код этой кнопки не удается...

В проект я добавил следующие строки:
Код AS3:
Locale.addXMLPath("en", "../assets/en/assets_en.xml");			
Locale.addXMLPath("ru", "../assets/ru/assets_ru.xml");
Locale.loadLanguageXML("ru");
В результате русский язык действительно устанавливается во всех DynamicText.

Проблема возникает, когда я пытаюсь создать Button, где состояния Common и Hover это DynamicText. СS5 отказывается экспортировать swc созданный подобным образом. Жалуется на 1086: Syntax Error: Expecting Semicolon Before Leftbracket. Понять в чем дело не удалось. В итоге не могу во flash локализовать кнопку.

Единственный "вывернутый" выход - локализовать кнопки уже в коде, но это не гибкий подход... Думаю должен быть нормальный метод делать локализуемые кнопки.

Добавлено через 2 минуты
Цитата:
Сообщение от Nemez Посмотреть сообщение
В кнопке Button должно быть динамическое текстовое поле, в котором написано, что кнопка делает. Значение в это поле ставится из языкового XML, в зависимости от выбранного языка. На переключателе языка должен быть эвент на функцию перерисовки.
По непонятной причине Flash CS5 отказывается экспортировать swc, если создать Button с одним DynamicText в Common и одним DynamicText в Hover, которым назначили идентификатор из Strings...

Добавлено через 5 минут
Цитата:
Сообщение от mikhailk Посмотреть сообщение
и как он отрисуется правильно, если он кнопка 50х30 по дизайну, а в него пихают "Сохранить игру"?
Всё верно. Стараюсь объекты делать больше. Обычно с запасом процентов на 50-70. Иначе текст не вместится в объект. Хотя возможно есть какие-то методы автоматического изменения размера, но не слышал о таких.


Последний раз редактировалось armagon; 22.12.2010 в 14:29.