加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

actionscript-3 – 触摸starling sprite中空白空间的事件

发布时间:2020-12-15 07:28:35 所属栏目:百科 来源:网络整理
导读:我有一个Starling Sprite我想要获得触摸事件.我正在使用 content.addEventListener(TouchEvent.TOUCH,onTouch); function onTouch(e:TouchEvent) { var touch:Touch = e.getTouch(content) as Touch; if (touch) { //do something }} 但是,这只适用于Sprite
我有一个Starling Sprite我想要获得触摸事件.我正在使用

content.addEventListener(TouchEvent.TOUCH,onTouch); 

function onTouch(e:TouchEvent) {

    var touch:Touch = e.getTouch(content) as Touch;
    if (touch) {
        //do something
    }
}

但是,这只适用于Sprite的子项被触摸而不是它们之间的空间.我想如果我创建一个alpha’d图像并在其下面粘贴它应该接收触摸事件,但有更好的方法吗?

我也在考虑在舞台上聆听触摸并执行相当于hitTestPoint()的操作.

我想出来了

var hitTest = (touch && content.hitTest(this.globalToLocal(new Point(touch.globalX,touch.globalY))));

但这似乎也不起作用,触摸事件仅在触摸内容Sprite的子项时才起作用.

解:

最后,我使用了切尔尼夫建议的alpha’d Quad

bg = new Quad(width,height);
bg.alpha = 0;
addChildAt(bg,0);

解决方法

尝试在Sprite中使用轻量级透明Quad(不需要图像).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读