Archive for the ‘Новости’ Category



26
Янв

Flex swf внутри pure AS3 проекта. Или как поженить flex и flash cs5.

В текущем проекте возникла необходимость вставить флекс swf внутрь проекта созданного во Flash IDE. Мало того, мне потребовалось, чтобы флекс ролик подгружаемый внутрь основной флешки самостоятельно адаптировался к размерам экрана и реагировал на изменение окна браузера вместе с остальными компонентами.

Ситуация эта возникла в первую очередь по банальной лени. Кусок интерфейса в этом модуле носит типовой флексовый характер - скроллбары, списки, кнопки, только не стандартные а а специально задизайненные дизайнерским дизайнером… Во Flash Catalyst такой интерфейс из исходника в иллюстраторе сооружается за 20 минут. Дальше дело техники - дописать чуть чуть кода и модуль готов. Очень уж не хотелось в рукопашную прописывать все эти интерфейсные элементы.

Сам по себе ролик подгружается в основной проект без проблем, но с тем, чтобы получить доступ к публичной функции флексового ролика - onResize() - пришлось повозится. Но, как говорится google в помощь и спустя пару часов я откопал решение.

На помощь пришло магическое заклинание:

(loader.content as MovieClip).application.onResize();

Оказывается после волшебного (loader.content as MovieClip). можно писать все что угодно - компилятор, как говорится, схавает! Главное, чтобы вы знали что пишете.

Внутри поля application хранится ссылка на… инстанс основного апликейшена флексового ролика. Соответственно можно получить и доступ ко всем его публичным переменным и методам. Т.е. все те функции, что прописаны public внутри основного mxml flex проекта - будут доступны. И это отлично работает!

fl_plus_fb

P.S. На обозначенный в заглавии вопрос в интернетах в основном отвечают так: “это никому не нужно” или “весь проект надо делать во флексе”.  Может быть, может быть. Однако флекс для моего текущего проекта слишком громоздкая штука,  с массой совершенно ненужных мне деталей. Достаточно сказать, что упомянутый выше флексовый кусок проекта в скомпилированном виде вместе со всеми своими бубенцами и примочками весит раз в пять больше моего основного файла swf. Т.е. экономия времени в данном случае оборачивается увеличением размера загружаемого модуля. Тем не менее это был интересный опыт. В случаях когда важна скорость разработки такой способ может помочь.

20
Янв

Flash-console логгер/дебаггер - швейцарский нож разработчика

Обнаружил на ruFlash интересную утилиту Flash-console логгер/дебаггер. Надо будет протестировать. console_controls

Обычно я пользуюсь либо традиционным трейсом, во flash IDE и SWFProfiler для отображения информации о состоянии памяти и framerate, либо встроенным дебаггером той же flash IDE. Очень спартанский набор, да.

Однако с переходом на 64-bit windows7 начались постоянные проблемы с дебаг-версией flash плеера - постоянно вешает мне файрфокс. Это очень, очень раздражает. Тут как раз может такая утилитка пригодится, т.к. она не требует этой дебаг версии.

Интерфейс этой штуки конечно не назовешь удобным и понятным, но это не главное. Посмотрим, как она покажет себя в деле.

На вскидку несколько возможностей flash-console, которые меня приятно удивили:

  • просмотр дерева объектов под курсором мыши
  • экранная линейка с увеличенным просмотром
  • графический мониторинг памяти + fps
  • принудительный запуск гарбадж-коллектора
  • инспектор объектов! Да, блин, можно посмотреть поля и методы объекта и текущие значения переменных!
  • несколько каналов трейсинга - очень актуально, у меня иногда output трейса так забивается мессагами, что я иногда неделю не могу найти из какого места в коде этот спам у меня генерится, а тут фильтровать можно.

P.S. попробовал лично. Просто офигенная штука! Меня впечатлила примочка - показывающая полностью все объекты находящиеся по курсором в виде дерева. Мне лично это помогло обнаружить, что некоторые негодяйские мувиклипы вовсе не удалялись со сцены, как я полагал, а висели там с нулевой прозрачностью и захламляли память. Так что штука мегаполезная. Однозначно рекомендую!

23
Авг
Comments Off

iphone и flash. Жизнь на яблоке.

Вот уже месяц я интенсивно использую iPhone 3G по полной программе. В том числе и для веб-серфинга.
И вот что я хочу сказать: отсутствие поддержкм flash мне совсем не мешает, более того, меня это просто не волнует.

Как впрочем, совершенно не волновало и раньше, когда я пользовался Nokia n800 с поддержкой флэша. На нокии я мог открыть практически любой флэш-сайт, однако осмысленно использовать его было просто невозможно.
Производительность. Да все дело в производительности. Даже довольно простые флэш-сайты еле ворочались на n800. Я убедился, что флэш номинально поддерживатся и спокойно забыл об этом. По существу смысла в такой поддержке ноль целых ноль десятых.
Ровно по этой причине меня ни минуты не смущало отсутствие поддержки flash на iPhone. Он тут просто не нужен!
Да. Давайте смотреть правде в глаза, на таком маленьком устройстве флэш - совершенно избыточная побрякушка не дающая ровным счетом ничего кроме удовлетворения от самого факта ее наличия.
Флэш-сайты надо смотреть на хорошем компьютере с большим монитором, а не на несчастных 320 пикселях ширины крошечного экрана айфона. На айфоне, как ни удивительно, есть куда более удобные способы читать всякие сайты, очень многие сетевые издания и ресурсы создают специальные приложения в которых в удобном для такого размера экрана виде показывается содержимое сайта. Вот, например, для хабра такое приложение есть. Это просто удобно.
По существу с обыкновенными сайтами гораздо больше мороки чем с оптимизированными версиями. Все эти трюки с увеличением, прокруткой и т.п. интересны в начале, потом же хочется просто читать, не тратя время на всякую возню с масштабированием.
Так что через некоторое время неизбежно приходишь к более оптимальным решениям.

А вот для айпада отсутствие флэша мне уже кажется довольно спорным, но на айфоне, повторюсь, совершенно пофиг.

Что же касается собственно iPhone, то это отличная вещь. Я удовлетворен на все сто. В первую очередь, меня восхищает интерфейс, быстрый, отзывчивый, ясный. Это образец, Образец для подражания с большой буквы.
Недавно я пощупал htc desire на андроиде, так вот хочу сказать: типичное не то. Ярко? Да. Быстро? Да. Разрешение экрана обалденное, цветопередача вах! Но, нет той глубины проработки интерфейса, той простоты и тщательности в проработке каждой детали.
На айфоне каждый пиксель вылизан до идеала. Каждому элементу интерфейса найдено почти идеальное место. Когда пользуешься этим устройством то понимаешь, да, это должно работать именно так. Как дизайнер, я хорошо знаю что эта “простота” дорогого стоит.

Весь этот пост я выстругал на айфоне, лежа на диване. И это было вполне удобно!

23
Авг
Comments Off

Html 5. На это стоит взглянуть.

Я знаю, что вы возможно уже читали это на хабре, тем не менее оставлю ссылку на память:

http://hakim.se/experiments/

Это уже довольно интересно выглядит.

19
мая

Листалка страниц HTML5 canvas. Чешу задумчиво в затылке.

Увидел сегодня на Хабре: листалка страниц на html5 canvas.

html5

Собственно живой пример.

Конечно это пример пока корявенький, без всяких излишеств, типа теней и объемов, но однозначно рабочий.

Процесс идет. Медленно, но верно. Младенец уже уверенно держит головку, скоро научится садится.

Celadon theme by the Themes Boutique