我今天要解决的问题与大多数问题不同。我想让应用程序更快地执行处理程序,这样我就不会在UI中看到任何延迟。
我有一个包含TextInput
的类和生成的虚线,由一系列线组成。这个组件,我们称之为CardTextInput
,监听父状态的变化。如果鼠标在该区域上方,则显示虚线,否则隐藏。
如果只有CardTextInput
的一个实例,如果我添加10,那么一切都很有效当我鼠标悬停它需要0.5秒来显示虚线与只有一个的情况相比,它会立即显示。
我如何优化这种情况?
答案 0 :(得分:2)
假设您在父myCanvas中添加了10个CardTextInput。
尝试将CardTextInput'mouseEnabled和mouseChildren设置为false
然后在myCanvas上添加MouseMove事件监听器
myCanvas.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove);
for each (var child:DisplayObject in myCanvas) {
child.dashLines.mouseEnabled = false;
child.dashLines.mouseChildren = false;
}
protected function onMouseMove(event:MouseEvent):void {
for each (var child:DisplayObject in myCanvas) {
child.dashLines.visible = false;
}
for each (child in myCanvas) {
if (child.hitTestPoint(event.stageX, event.stageY)) {
child.dashLines,visible = true;
break;
}
}
}