从Flex 4 / 4.5迁移到4.5.1移动设备

时间:2011-08-31 12:38:00

标签: flash flex adobe flash-builder flex4.5

我尝试使用mx从flex 4 / 4.5编写的flex代码迁移到仅使用spark与flex 4.5.1兼容。

问题是我无法在spark中找到一些mx组件,所以任何帮助都会被批评:

MX:树
MX:文本
alert.show()

由于

2 个答案:

答案 0 :(得分:2)

Flex SDK中没有Spark等效的MX Tree控件。但无论如何,考虑到资源(性能),在控制移动应用程序中使用它太过“沉重”。我认为你应该重新考虑你的GUI并介绍它的一些轻量级版本。

mx:Text可以替换为s:Labels:RichText,具体取决于您是否需要格式化。您可以看到功能比较表here

最后,Alert。开箱即用的没有Spark等效的MX Alert。 Spark架构有SkinnablePopUpContainer,可用于创建自己的警报,可以为您的应用程序自定义警报。例如,使用类似iPad的弹出窗口。

更新。实施了一些third party Spark Tree

答案 1 :(得分:1)

我认为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将任何flex组件显示为弹出窗口并将modal选项设置为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);