我在设置动画片段的宽度和高度时遇到问题。 我所做的是创建新的movieclip将其添加到舞台,然后调整大小并重新定位。
public class mcMainContent extends MovieClip
{
var _myStage:Stage;
public function mcMainContent()
{
}
public function ResizeAndReposition(leftContent:MovieClip,rightContent:MovieClip,myStage:Stage)
{
_myStage = myStage;
x = leftContent.width + 10;
width = _myStage.stageWidth - leftContent.width - rightContent.width - 10;
trace("calculated width: " + (_myStage.stageWidth - leftContent.width - rightContent.width - 10) + ", width of element: " + width);
}
public function Resize()
{
}
public function Reposition()
{
}
}
即使计算值始终是其他数字,我也总是将我的movieclip的宽度设为0。在我将movieclip添加到舞台之后,我尝试调用此函数,然后将movieclip添加到舞台,但它的宽度始终为0。 谢谢
答案 0 :(得分:3)
如果您的MovieClip没有内容,则其宽度将始终为0. MovieClip的宽度由其内容决定,当您调整MovieClip的大小时,该内容会向上和向下缩放。换句话说,如果您的MovieClip包含100px宽的形状,则MovieClip的宽度将为100px。如果然后将MovieClip的宽度设置为200px,则内部形状的scaleX值为2.
作为旁注,您应该知道方法名称应以小写字母开头。这是为了区别于类名。