Миграция с Flex 4/4.5 на 4.5.1 для мобильных устройств

Я пытаюсь перейти с гибкого кода, написанного на flex 4/4.5, с использованием mx, чтобы быть совместимым с flex 4.5.1, используя только искру.

Проблема в том, что я не могу найти несколько компонентов mx в spark, поэтому любая помощь будет оценена:

mx:tree
mx:text
alert.show()

Спасибо


person Randall Flagg    schedule 31.08.2011    source источник


Ответы (2)


В Flex SDK нет эквивалента элемента управления MX Tree в Spark. Но в любом случае этот элемент управления слишком «тяжелый», чтобы использовать его в мобильных приложениях с учетом ресурсов (производительности). Я думаю, вам следует переосмыслить свой графический интерфейс и представить его облегченную версию.

mx:Text можно заменить на s:Label или s:RichText в зависимости от того, нужно вам форматирование или нет. Таблицу сравнения возможностей можно посмотреть здесь.

Наконец, Alert. Стандартного эквивалента Spark для MX Alert не существует. В архитектуре Spark есть SkinnablePopUpContainer, которые можно использовать для создания собственное оповещение с возможностью настроить его для вашего приложения. Например, чтобы использовать всплывающие окна в стиле iPad.

Обновлять. Реализован некоторый сторонний Spark Tree.

person Constantiner    schedule 31.08.2011
comment
Если вы хотите использовать это мобильное приложение, держитесь подальше от компонента RichText и используйте 's:Label' или 's:StyleableTextField', поскольку компонент RichText не оптимизирован для мобильных устройств. Вы можете найти полезную информацию о том, что хорошо, а что нет для мобильных устройств здесь - person Chad; 02.09.2011

Я не думаю, что есть какая-либо замена для дерева MX. Если вы ралли не хотите его использовать, вы можете проверить эту страницу:

http://cookbooks.adobe.com/post_Spark_Tree-17788.html

Для компонента Text используйте любой из следующих вариантов в зависимости от ваших потребностей (я предлагаю s:Label, это намного быстрее):

http://help.adobe.com/en_US/flex/using/WS02f7d8d4857b1677-165a04e1126951a2d98-7fff.html

Предупреждения Spark нет, но если вы действительно не можете использовать элемент управления mx, используйте PopUpManager для отображения любого гибкого компонента в виде всплывающего окна и установите для модального параметра значение true. Тем не менее, компонент TileWindow — это действительно базовый компонент всплывающего окна, который вы можете расширить, если вам нужно. Дополнительная информация о TileWindow:

http://help.adobe.com/en_US/flex/using/WS6c678f7b363d5da52e8f1ca1124a0430dcf-8000.html

Вот пример использования PopUpManager :

        _legalPopup = new LegalMentionPopup();
        _legalPopup.title = "Legal Mention"

        PopUpManager.addPopUp(_legalPopup, FlexGlobals.topLevelApplication as DisplayObject, true);
        PopUpManager.centerPopUp(_legalPopup);
person Exort    schedule 31.08.2011
comment
Спасибо за ответ и за образец. Я бы дал вам также принятый ответ, но может быть только 1, и @Constantiner ответил раньше. - person Randall Flagg; 13.01.2012