我正在尝试使用以下事件处理程序
创建扩展对象public function pickerMove(e:MouseEvent):void {
trace("in mouse move");
var offsetX:int = e.stageX - touchX;
trace(offsetX);
picker.x += offsetX;
trace(picker.width);
picker.width -= offsetX;
trace(picker.width);
touchX = e.stageX;
}
picker.x + = offsetX按预期工作,并移动组件的x坐标。
问题在于picker.width - = offsetX
组件的宽度在屏幕上不会改变,但picker.width的值会随着在控制台上打印而改变。
以下是跟踪的一些示例输出:
in mouse move
-1
928
929
in mouse move
-1
929
930
in mouse move
-1
930
931
是否有一些我不了解自定义组件大小调整的内容?
答案 0 :(得分:0)
尝试使用UIComponent失效机制并覆盖自定义组件中的updateDisplayList()
以使用新宽度重新绘制组件。