【问题标题】:Trigger mouse click on overlapping movieclips触发鼠标点击重叠的影片剪辑
【发布时间】:2012-11-23 12:56:54
【问题描述】:

我有两个重叠的 MovieClip(同一个父级),都有一个鼠标点击监听器。

但只有最上面的 MC 会检测到点击。

是否可以让两个 MC 都使用侦听器检测点击?

如果不是,碰撞是不是比使用getObjectsUnderPoint() 更好的方法?

【问题讨论】:

  • 两者重叠有什么特殊要求吗?
  • 当然!但我不想讨论这个,虽然说它是一个游戏会给它带来一些启示:)
  • 我尽可能地问了:) 避免重叠,将可点击的影片剪辑分成 3 个部分,2 个独立和 1 个重叠。您也可以使用GetObjectsUnderPoint 来委托点击。
  • 不仅仅是解决这个问题,我现在想要一个一般的答案,是否可以在重叠的 MC 上广播点击事件? getObjectsUnderPoint() 坐标有问题
  • 除了变通方法之外没有直接的方法可以做到这一点

标签: actionscript-3 events


【解决方案1】:

您可以将点击事件注册到父控制器或类。当它接收到事件回调时,它可以从该回调函数将其广播回所有其他子 MC。这只是管理 MC 的问题 - 要么跟踪它们的名称,要么将全部添加到一个数组中,这样你就可以使用 for 循环来遍历它们。

【讨论】:

  • 不行……还有其他的兄弟MC没有被点击,不应该被触发。
  • 然后只注册那些重要的
猜你喜欢
  • 1970-01-01
  • 2012-11-06
  • 2017-12-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-23
  • 1970-01-01
  • 2017-05-06
相关资源
最近更新 更多