【问题标题】:How to detect click on underlaying image through transparent areas of other images?如何通过其他图像的透明区域检测对底层图像的点击?
【发布时间】:2014-01-16 20:31:02
【问题描述】:

我的图像有一些透明区域。它显示多次并重叠(与它的其他实例)。
用户应该能够通过单击覆盖实例的透明区域来单击图像的底层实例。

我试图通过使用来做到这一点

this.addEventListener(TouchEvent.TOUCH, onTouch);
protected function onTouch(event:TouchEvent):void {
if (event.getTouch(this, TouchPhase.BEGAN))
{
    var touch:Touch = event.getTouch(this, TouchPhase.BEGAN);
    var image:Image = event.touches[0].target as Image;
}

但是这种方法在透明和非透明区域之间似乎没有区别。

我读到应该可以覆盖闪存的Image-class 以存储 alpha 值,但我找不到一个可行的示例。或许starling 内置了解决方案?

【问题讨论】:

    标签: actionscript-3 flash transparency hittest starling-framework


    【解决方案1】:

    您可以试试这个解决方案。它接缝处理您遇到的相同问题。

    http://aphall.com/2012/12/starling-transparent-textures/

    【讨论】:

    • 我不得不对其进行修改以使其适用于静态实例(为了避免经常使用同一图像时出现问题,但它解决了我的问题!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-04
    • 1970-01-01
    • 1970-01-01
    • 2016-12-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多