Flex和Flash都是Adobe的Ria产品开发工具。
Flex项目经常会用到外部的swf动画产品(AS3)
在整个项目开始前就要考虑到如下因素,才会让以后的工作事半功倍。
1:flash产品的as版本是否是AS3的
众所周知as3和as2是基于2种不同的AVM。as3的产品不再支持as2语法。
所以如果你把一个as2的交互产品(动画除外)加载到as3的产品,as2 的产品失去了交互功能。
当然两个as2产品相互导入也会出现问题。但出现问题的原理不同。
前者是两套虚拟机的不兼容造成的,后者是他们的root level造成的
2:如果flash产品里面使用了adboe自己的组件,如TextArea等等。
虽然你单独打开flash没有问题。但是一旦让flex使用它,则会报错,
原因就是flex里并没有(adobe中的TextArea)的组件
3:使用flash里的元素因为flex和flash的显示列表的类继承有了分歧
如:a为flash里一个link 类元件
Fla发布出swc后。Flex代码 一定要把flash的原素放到一个UIComponent实例中
否则不会显示
4:路径的问题
单独的flash是一个加载同级目录下config包里的xml文件,和播放同级目录musics包里的mp3文件
但是当flex来使用这个flash播放器的时候,此时那2个同级目录的包(musics config)需要迁移至
与flex产品同级目录下。
5:flex和flash两套代码库之间共有的变量的控制
如flash产品里如果使用了相对定位。stage.stageWidth
那么一个尺寸更大的Flex来加载flash时,flash产品的stage已经是Flex产品的stage了。
所以会出现布局混乱的情况。