设置精灵宽度或高度而不缩放它的子项

时间:2012-10-01 20:56:38

标签: actionscript-3 size sprite scale

我正在尝试动态更改Sprite对象的widthheight,这是其他类似Sprite对象的容器。容器对象根据其子项的大小自动更改其大小,但是当我更改子对象的位置时,容器的大小保持不变,并且它的子项似乎放在容器外。

我尝试使用类似的方法来解决这个问题:

if (container.width < (child.x + child.width))
{
    container.width = (child.x + child.width);
}

但是,当我使用此代码时,容器对象的子项将被缩放 有没有办法改变容器的大小而不缩放它的孩子?

1 个答案:

答案 0 :(得分:5)

直接不可能,精灵的大小取决于其内容的界限。因此,唯一的选择是调整精灵的孩子大小,或者将假孩子放在x: 0y: 0 上(假设这将是您想要的定位点)。< / p>

内容边界的坐标不会像您期望的那样被考虑在内,例如当100 x 100px的一个孩子放在x: 50, y: 50上时,父母的大小仍然是{{1 }},而不是100 x 100px

150 x 150px上添加100 x 100px的另一个孩子会增加x: 0, y: 0的界限,因为它现在从第一个孩子150 x 150开始,到第二个孩子{{1}结束} + x: 0, y: 0

content bounds