sprite是经常用到的显示对象,它有一些十分有趣的特性(也十分的坑爹)。
1.当sprite里面没有任何子显示对象,也没用graphics画任何的图形时,这时如果给sprite的width和height赋值的话,scaleX和scaleY将会变成0,之后再往sprite添加任何显示对象或者用graphics画图都不会显示。如果先添加显示对象,则sprite的width/height就是有里面的显示对象或者graphics的图像的大小决定的(如果两个对象之间有距离,则距离也算在内),这时在改变sprite的width和height就会改变sprite的scaleX和scaleY,造成所有图像的缩放。
2.当只在一个sprite里添加了一个鼠标点击事件侦听器,如果sprite里没有任何的显示对象,只是用graphics画了一个图形,那么这个鼠标点击事件是不能触发的,但是当添加了一个像是对象的话(例如另外一个sprite),那么就可以触发事件了,但是触发区只是子sprite的区域。
注:只有当次sprite是stage的最底层的显示对象的是侯,才会有这种现象。