没有Flex Framework/Components的MXML

dar*_*can 3 apache-flex flash mxml mxmlc

Flex编译器可以编译不包含任何Flex组件字节码的"纯AS3"SWF文件.所以,

是否有可能创建一个自定义组件框架(用于代替Flex框架),仍然可以使用MXML(读取:标记)进行可视化布局,并编译为SWF而不依赖于Flex Framework本身?

wul*_*ong 8

是的,这是可能的.您的MXML文件基本上只是指定类的一种不同方式.您可以通过编译项目和提供-compiler.keep-generated-actionscript=true来查看mxml文件归结为什么mxmlc.

bar.mxml:

<?xml version="1.0" encoding="utf-8"?>
<flash:Sprite xmlns:flash="flash.display.*">
</flash:Sprite>
Run Code Online (Sandbox Code Playgroud)

编译后mxmlc -compiler.keep-generated-actionscript=true bar.mxml,它变成以下.

生成/ bar-generated.as:

package {
    import flash.display.Sprite;
    // bunch of imports
    public class bar extends Sprite {
        public function bar() { super(); }
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 您可以将编译器参数缩短为`-keep`.更容易记住. (2认同)