0

我无法将 OnAreaTouch 添加到我的精灵。我有一个全屏实体(Recatngle)并将它附加到我的父场景。所以矩形是孩子对吗?所以我附加了它并覆盖了 OnAreaTouch 方法。现在它需要触摸事件,但会触发下层的触摸事件。我的意思是我在它下面有一个精灵,所有精灵都连接到主场景并有自己的触摸方法。这里有什么问题?如何将 OnAreaTouch 专门限制在图层/精灵上?

请注意:我是 AndEngine 的新手并使用 GLES2 AnchorCenter 分支。

4

1 回答 1

2

您可以通过两种方式实现

  1. 当您转到子层时,请在父触摸中放置布尔值,如下所述,并在您切换到子层时使其变为真

    @Override
        public boolean onAreaTouched(TouchEvent pSceneTouchEvent,
                ITouchArea pTouchArea, float pTouchAreaLocalX,
                float pTouchAreaLocalY) {
    
            if(isChildLayer)
                return false;
    
            return true;
        }
    
  2. 如果要暂停父场景,请将图层设为场景并放置此代码

     mEngine.getScene().setChildScene(childScene, false, true, true); 
    
于 2013-11-13T11:20:26.437 回答