【问题标题】:Capture Flash / Flex redraw DisplayObject event?捕获 Flash/Flex 重绘 DisplayObject 事件?
【发布时间】:2010-12-20 14:07:33
【问题描述】:

我正在尝试为滚动区域中的某些 MovieClip / Sprite 对象捕获重绘事件。

理想情况下,应该能够在 Flash Player 自身重绘对象时捕获事件,如 FP 调试中的“显示重绘区域”所示。

我尝试使用 Event.RENDER 来捕捉它,但它甚至会在对象不可见/重绘时触发。

是否有任何原生 Flash 事件可以帮助我准确捕捉到这一点?

TIA!

【问题讨论】:

  • 似乎脚本无法检测到重绘区域。如果对象在显示列表中,即使它不可见,Event.RENDER 也会调用。
  • 谢谢。有什么方法可以确定对象在视口中是否可见,而无需循环并检查坐标?
  • 您需要重绘事件来解决什么问题?可能有更好的解决方法。
  • 您可以使用 getBounds 或其他类似方法之一执行此操作 - 看看这个:actionsnippet.com/?p=1413
  • 太棒了。 object.transform.pixelBounds 为我提供了决定是否重绘所需的信息。

标签: apache-flex flash event-handling displayobject


【解决方案1】:

到目前为止,似乎没有办法捕获 Flash Player 的重绘事件。

但是,为了解决我使用的这个特定问题 - 在我手动重绘的显示对象上,使用 object.transform.pixelBounds 检查边界

  • 使用 Event.RENDER 触发事件,以便每个对象根据边界在显示区域内时根据需要重绘。

不完美,但能胜任。希望 FP 为从事细节工作的人提供此功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-13
    • 1970-01-01
    • 1970-01-01
    • 2011-02-18
    • 2011-08-31
    相关资源
    最近更新 更多