加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex环境中“帧”的概念以及应用

发布时间:2020-12-15 05:16:24 所属栏目:百科 来源:网络整理
导读:? ?“
?

?“帧”是Flash的重要概念,是开发逐帧动画的基础。

使用Adobe的Flash IDE可以轻松地在时间轴上添加任意数量的关键帧,开发出多帧的swf。

?

Flex的本质就是Flash,可是你在Flex的书籍资料中有见过“帧”的字样吗?

几乎没有吧。

为什么?

?

基于Flex框架开发出的swf是只有两帧的电影剪辑(MovieClip)。

该MovieClip就是Flex中的SystemManager这个类。

SystemManager是启动类(文档类)。

我们知道,启动类(文档类)的构造函数会被FlashPlayer自动调用,因此SystemManager的构造函数就是Flex应用程序生命的起点。

?

SystemManager的第一帧放置了轻量的代码,用来实现下载进度监控(预加载),显示进度条,同时显示下载进度。

第二帧放置了重量级的代码,也就是我们使用FlexBuilder开发的Application和各种资源(图片等)。

?

SystemManager的构造函数中,首先用Stop()函数控制FlashPlayer播放器将播放头停留到在第一帧,然后动态化出进度条,并设置事件监听器用来监听swf文件的现在进度。

当下载完成后,SystemManager用NextFrame()函数控制播放头移动到第二帧,同时通过AS3的反射函数getDefinitionByName()动态生成Application类的实例。于是我们的Application开始执行构造函数,一切就此展开。

?

基于Flex框架开发出的swf是只有两帧的电影剪辑(MovieClip)。

我们使用FlexBuilder开发的Application和各种资源(图片等)只存在于MovieClip的第二帧。

Flex虽然也是基于帧的应用,但是Flex框架(SystemManager)隐藏了“帧”。

也就是说,对于Flex开发者而言,并不需要像开发Flash那样时刻关注“帧”,屏蔽了“帧”的概念,更有利于不熟悉Flash的开发者快速了解Flex的常规开发方法。

?

反过来,缺乏对Flex本质(Flex就是Flash)的认识,缺乏对Flex生命起源(SystemManager)的认识,缺乏对Flex组件生命周期的认识(该概念将在其他文章中说明),那么对于Flex,我们只能是“知其然,不知其所以然”。无法开发出高效的Flex程序,无法有效地扩展Flex(自定义组件,优化代码)。

?

开发RIA的各种开发语言、技术中,“帧”的概念是Flash(Flex)特有的,这有别于Silverlight、HTML5等。

该特点将被应用在特殊用途,使得在与同类技术的竞争中获得优势。

说HTML5是未来,Flex只有5年左右的领先优势,这样的预测或判断需要时间来验证。

?

参考:

==============================================================

http://ch-kexin.iteye.com/blog/1144204

http://uh.9ria.com/space-32359-do-blog-id-9250.html

http://www.bit-101.com/blog/?p=946

http://www.riaidea.com/blog/archives/191.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读