您的位置:首页 > 其它

使用Starling 框架时,报错Error: Error #3669: 输入大小错误, 解决方案

2013-07-11 13:00 567 查看
原因有二:
1.IE底下,SWFOBJECT嵌入swf的时候,有瞬间的stage的width跟height是0导致的。
2.stage.scaleMode = StageScaleMode.NO_SCALE;//这句话瞬间也会导致stage的width跟height为0.
解决办法:
上来先:stage.scaleMode = StageScaleMode.NO_SCALE;
然后别急着new Starling,而是先判断stage.width和height是否为0,为0,就侦听resize事件。具体代码:

public function Test()
{
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
if (stage.stageWidth>0 && stage.stageHeight>0){
start();
}else{
stage.addEventListener(Event.RESIZE,onResize);
}
}
private function onResize(e:Event):void
{
if (stage.stageWidth>0 && stage.stageHeight>0){
stage.removeEventListener(Event.RESIZE,onResize);
start();
}
}
public function start():void{
starlingEngin = new Starling(Game, stage);
starlingEngin.antiAliasing = 1;
starlingEngin.showStats = true;
starlingEngin.start();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐