易截截图软件、单文件、免安装、纯绿色、仅160KB

Flash Player帧频、Timer计时 的时间间隔

对于大部分Flash开发者,都已经知道Flash的帧频、Timer计时并不是十分精确的。如果您已经做过这方面测试,可以略过这篇文章的前面一部分,在后面有关于Flash Player可变跑道的文章链接,希望对您有帮助。这篇文章的主要目的是让一些不知道Flash计时不精确和知道但又没有做过测试的朋友,来分享我的测试结果。我使用的Flex开发工具,并创建了一个ActionScript项目。
测试我尽量使用最简单的代码,下面是针对于Timer的测试代码,设置了一个20毫秒每次的Timer,为了简单我只计时5次:
package
{
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.utils.Timer;
import flash.utils.getTimer;

public class TimerTest extends Sprite
{
// 定义一个计时器
private var timer:Timer;
// 记录上一次计时的时间
private var prev:int;

public function TimerTest()
{
// 计时器初始化为20毫秒执行一次,执行5次后结束
timer = new Timer(20, 5);
timer.addEventListener(TimerEvent.TIMER, onTimer);
timer.start();
// 启动计时器后,记录一下当前时间
prev = getTimer();
}

private function onTimer(event:TimerEvent):void
{
// 计时器执行,获取当前时间
var t:int = getTimer();
// 打印出当前时间与上一次计时的时间间隔
trace(t - prev);
// 记录下当前时间
prev = t;
}
}
}
/** 输出结果
26
28
38
27
20
**/
运行一下这个程序,可以看到输出的结果并不是准确的20毫秒,每次运行的结果都不一样,并且都大于等于20毫秒,由此可以得出Timer的计时并不是精确的。
继续看每次Flash帧频的时间间隔,这个测试例子中,设置了帧频为25帧每秒,理论上两帧之间的时间间隔为40毫秒(1000毫秒 / 25帧):
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.utils.getTimer;
// 设置swf的帧频的25帧每秒
[SWF(frameRate = 25)]
public class EnterFrameTest extends Sprite
{
// 记录上一次计时的时间
private var prev:int;

public function EnterFrameTest()
{
// 监听ENTER_FRAME事件
this.addEventListener(Event.ENTER_FRAME, onEnterFrame);
// 记录当前时间
prev = getTimer();
}

private function onEnterFra


相关文档:

HTML5 与Flash 从乔布斯讨厌Flash说起

个人觉得这是标准与私有标准的PK, 就像微软的office和其他office软件,如金山wps,openoffice的竞争类似。
从用户角度看PK越多越好,呵呵。
http://www.javaeye.com/news/15856-apple-flash
http://www.w3school.com.cn/html5/index.asp
http://www.w3.org/TR/html5/
http://html5.org/ ......

Ubuntu中Flash无法显示中文的解决办法

    Ubuntu中有个历史遗留问题——Flash中的中文只能显示方框,其原因为字体配置的问题。解决办法如下:
终端中输入:
cd /etc/fonts/conf.d/
sudo gedit 49-sansserif.conf
打开后,将里面的两个sans-serif替换为sans serif,即将短横替换为空格。保存退出即可。 ......

Flash AIR 全屏 屏蔽ESC

package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.system.fscommand;
import flash.display.StageDisplayState;
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
/**
* ...
* @author LittleSpace
*/
public class Main extends Sprite
{ ......

android上拔出sd卡导致flash上媒体也消失问题解决方法

机器内部有一部分flash供客户使用,同时机器支持sd卡。当插入sd卡时候flash内部和sd卡内部的多媒体都可以被播放器识别,一旦拔掉sd卡,则flash内的媒体对播放器也不见了。
解决方法:
修改frameworks/base/services/java/com/android/server/MountService.java文件的函数:notifyMediaBadRemoval如下,红色为添加。
mCon ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号