Обратите внимание, что новости можно получать по RSS.
X
-

Информационные технологии, LiveJournal cr_it - архив

11 октября 2010, 03:32 (4939 дней назад, №8803)О миграции с Flex 3 на Flex 4
Пришло время переезжать с Flex Builder 3 на Flash Builder 4. В принципе, я ожидал, что не всё будет гладко но, честно говоря, не думал, что отличия так серьёзны.

Попытка просто импортировать и скомпилировать проект в четверке успехом конечно не увенчалась - полезли ошибки.
Дело в том, что в четверке появились новые компоненты Spark ("s:") дополнительно к старым Halo ("mx:"). Проблема в том, что старые mx компоненты по умолчанию работают не так, как работали в тройке. Это проявляется во многом (см. ссылки ниже).
Новые Spark компоненты вовсе не являются заменой для mx. К примеру, TabNavigator, DataGrid, AdvancedDataGrid, Box - там просто нет, а те что есть, с аналогичными mx'овским названиями, выглядят и работают не так, как в тройке.
Это, конечно, не случайно и объясняется другой концепцией - Adobe решили полностью развязать функционал компонента и его визуальное представление. Spark компоненты - намного примитивнее и требуют написания к ним скинов. Т.е. если хотите получить кнопочку как была в mx, вам надо в отдельном mxml файлике описать специальными тэгами все её состояния. Допустим, что нажатая кнопка это rectangle такого цвета, отжатая другого и т.д. И так для всех контролов. Можно конечно это делать не вручную, а генерить код из Flash Catalyst, но суть проблемы не меняется.
Т.е. в любом случае, если подходить к вопросу "в лоб" - это длительная и кропотливая работа.

Да, можно смешивать Halo и Spark компоненты в одном mxml. Но это теоретически. На практике всё это будет работать не так, как в тройке. И с массой оговорок, далеко не очевидных.
Более того, когда я попытался пойти по пути смешения - начали вылезать всякие загадочные run-time ошибки, причины которых выявить не удалось.

В итоге, временно проблема была решена следующим образом:

Идём в Project / Properties / Flex Compiler / Additional Compiler Arguments
В опциях компилятора добавляем:
-theme="C:\PROGRAM FILES\ADOBE\ADOBE FLASH BUILDER 4\SDKS\4.0.0\FRAMEWORKS\THEMES\HALO\halo.swc"

Таким образом, весь старый код компилится и работает практически так же, как в тройке (есть отличия, но их оказалось несложно поправить).
Т.е. получается такая работа с Flex Builder 3 в среде Flash Builder 4.

Полезные ссылки:
http://www.adobe.com/devnet/flex/articles/flex4sdk_whatsnew.html
http://www.adobe.com/devnet/flex/articles/flex3and4_differences.html
http://insideria.com/2010/05/transitioning-from-flex-3-to-f.html
http://www.adobe.com/devnet/flex/articles/flex3_to_flex4_transitioning.html
Опубликовано: Пётр Соболев

Случайная заметка

9187 дней назад, 00:0023 февраля 1999 (Михаил Лихачев, 23 февраля 1999) Эта история не претендует на абсолютную историческую точность, так как была воспроизведена по памяти относительно событий пятилетней давности. Кроме того, так она выглядела с моей точки зрения и, вероятно, я мог упустить из виду какие-то важные моменты ее развития, ...далее

Избранное

2541 день назад, 01:575 мая 2017 Часть 1: От четырёх до восьми Я люблю читать воспоминания людей, заставших первые шаги вычислительной техники в их стране. В них всегда есть какая-то романтика, причём какого она рода — сильно зависит от того, с каких компьютеров люди начали. Обычно это определяется обстоятельствами — местом работы, учёбы, а иногда и вовсе — ...далее

2053 дня назад, 20:305 сентября 2018 "Finally, we come to the instruction we've all been waiting for – SEX!" / из статьи про микропроцессор CDP1802 / В начале 1970-х в США были весьма популярны простые электронные игры типа Pong (в СССР их аналоги появились в продаже через 5-10 лет). Как правило, такие игры не имели микропроцессора и памяти в современном понимании этих слов, а строились на жёсткой ...далее