关于浏览器最小化或切换网页后 flash 帧频降低的问题

通过试验发现

 帧频设置在 1秒钟 2帧以上时 最小化浏览器和切换网页后 帧频会降到 一秒钟2帧左右 

 帧频设置在 1秒钟 1帧时 不受浏览器和切换网页的影响

 当flash 页面被再次激活时 帧频又会恢复 这时可能会给界面造成一些显示bug

 

解决办法

 脱离帧频对动画播放的影响 采用完全基于时间的动画 

设置相对于时间的帧频是 1秒钟 20帧 就是50毫秒 0.05秒 播放一帧 

通过运行总时间 除以 帧间隔 0.05秒 设置当前时间应该播放到哪一帧

 如下一段代码  (用此代码来控制你的影片剪辑播放 )

import flash.events.Event;
import flash.events.DataEvent;
this.addEventListener(Event.ENTER_FRAME,onFrame);
var startTimer:Number = getTimer();
var zhen:int = 0;
Object(this).mc.stop();
var zongmiao:Number = 0;
function onFrame(event:Event):void
{
 var cha:Number = getTimer()-startTimer;
 startTimer = getTimer();
 var miao:Number = cha/1000;
 
 zongmiao+=miao;
 zhen=zongmiao/0.05;
 if(zhen>=100){
  zhen = 0;
  zongmiao = 0;
 }
 Object(this).mc.gotoAndStop(zhen);
 trace("上下帧时间间隔:"+miao+"秒 当前共运行了"+zongmiao+"秒 动画共需要4.9秒"
    +"当前帧"+zhen+" 共100帧");
}

 

可以写一个类 专门来把美工做好的基于帧频播放的mc 修改成基于秒的播放模式

你可能感兴趣的:(Actionscript)