pos极速模式

pos

pos(x:Number, y:Number, speedMode:Boolean = false):Sprite

设置坐标位置。相当于分别设置x和y属性。 因为返回值为Sprite对象本身,所以可以使用如下语法:spr.pos(...).scale(...);

以上是官方API解释

在设置x,y属性时,正常情况下,默认不使用极速模式,调用this.x = value进行赋值,极速模式直接调用内部函数处理,如果没有对x,y属性进行重写,建议设置极速模式处理,性能更高。

查看sprite中的pos方法,发现极速模式下,同时设置_x和_y,设置完之后,再调用一次;

非极速模式下,会调用两次以下代码

//极速模式下,只调用了一次,而非极速模式下,调用了两次
//非极速模式,this.x = x和this.y = y,单独执行,每执行一次,都会走一次以下代码
conchModel && conchModel.pos(this._x,this._y);
var p:Sprite = _parent as Sprite;
if(p&&p._repaint == 0){
    p._repaint = 1;
    p.parentRepaint();
}
if(this._$P.maskParent&&_$P.maskParent._repaint === 0){
    _$P.maskParent._repaint = 1;
    _$P.maskParen.parentRepaint();
}
发布了61 篇原创文章 · 获赞 2 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/qq_22794043/article/details/88683941