如何在 ActionScript 中使用 MXML mx.controls.Label

Posted

技术标签:

【中文标题】如何在 ActionScript 中使用 MXML mx.controls.Label【英文标题】:How to use MXML mx.controls.Label in ActionScript 【发布时间】:2017-03-14 15:24:34 【问题描述】:

我有一个完全在 AS3 中开发的 AS3 应用程序,没有使用 MXML 中的单行代码。最近我意识到 MXML 有一些丰富的控件,这些控件在开源 Apache Flex SDK 中没有提供。 mx.controls 中我最感兴趣的一个库,它包括 Label、DataGrid 等。

现在,我想扩展我的 AS3 应用程序以调用编译成 swf 文件的 mxml。我试图在我的 AS3 程序中导入 mx.controls,但它没有感觉到。如果我做错了什么,请告诉我。如果我能够在 as3 类中导入 mx.controls,它将为我节省很多时间。我可以这样做吗?

另外,我尝试在 mxml 中编写一些应用程序,然后在 AS3 中调用 (.swf)。可能吗?

我尝试了谷歌搜索,但所有示例都指向在带有 [CDATA[]] 的 MXML 中使用 ActionScript。但我想要相反的。从 ActionScript 调用 MXML。

请详细解释一下,因为我一直在努力解决这个问题。

提前感谢

【问题讨论】:

发布一些您尝试过但不起作用的代码。 感谢 Neal Davis,但这不是必需的,因为 Nemi 已经理解并回答了问题。我只是希望有人确认我没有遗漏任何东西。 【参考方案1】:

您不能这样做,因为使用 MXML 的 Flex 是构建在 Actionscript 之上的框架。但是你可以做反向。在 Flex MXML 中,您可以使用 Actioscript 代码,也可以使用 SpriteMovieClip... 等 Flash 组件,方法是将 UIComponentSpriteVisualElement 作为其父容器。

【讨论】:

Nemi,感谢您的快速回答。我怀疑。有一些博客展示了如何在 ActionScript 中使用 mxml,但它看起来更像是 hack 而不是解决方案。但这在 ActionScript 中没有太多选择,因为没有标签、按钮或数据网格。

以上是关于如何在 ActionScript 中使用 MXML mx.controls.Label的主要内容,如果未能解决你的问题,请参考以下文章

如何从 flex (mxml/actionscript?

在 flex 应用程序中使用 mxml 优于 actionscript 有啥优势?

使用 MXML 或 actionscript 单击按钮添加文本字段

如何将 Actionscript“类”与 Flex MXML 文件一起使用?

使用 mxml 脚本代码连接 ActionScript 类(Socket)

在 Actionscript3 中编写 MXML 代码