2014-12-28 2 views
1

AndEngine이있는 게임에서 전체 장면에서 터치 이벤트를 처리하여 메서드를 트리거하려고합니다. 그러나 지금, 때마다 나는 그것이 자세한 수준의 메시지를 나에게AndEngine Touch 이벤트 풀이 가득했습니다.

"org.andengine.input.touch.TouchEvent$TouchEventPool<TouchEvent> was exhausted, with 0 item not yet recycled." 

"org.andengine.util.adt.pool.PoolUpdateHandler$1<TouchEventRunnablePoolItem> was exhausted, with 0 item not yet recycled." 

을 던져 그 외에 아무것도하지 않는 화면을 누릅니다.

여기에 무슨 일이 일어나고 있는데, SceneTouchEvents가 처리되는 방식에 뭔가 빠졌습니까? 어떻게 든 터치 이벤트를 풀에 할당하여 문제를 해결할 수 있습니까?

-Thank you, Cheers!

편집 : 내가 전화하려고 방법 :이 onSceneTouch 방법으로

private void restartGame(){ 
     Debug.d("GameMech", "Restart method triggered."); 
     setIgnoreUpdate(true); 
     unregisterUpdateHandler(physicsWorld); 
     enemyFlies.clear(); 
     platforms.clear(); 
     physicsWorld.clearForces(); 
     physicsWorld.clearPhysicsConnectors(); 

     while (physicsWorld.getBodies().hasNext()){ 
      physicsWorld.destroyBody(physicsWorld.getBodies().next()); 
     } 

     camera.reset(); 
     camera.setHUD(null); 
     camera.setChaseEntity(null); 

     detachChildren(); 

     populate(); 
     setIgnoreUpdate(false); 
    } 

: 당신이 당신의 게임 활동에 장면을 등록하는 것을 잊지 경우가 종종 발생

@Override 
    public boolean onSceneTouchEvent(Scene pScene, TouchEvent pSceneTouchEvent) { 
     if(pSceneTouchEvent.isActionDown() && player.isDead()){ 
      restartGame(); 
      return true; 
     } 
     return false; 
    } 
+0

터치 이벤트 처리기에서 트리거하려는 메소드를 붙여 넣을 수 있습니까? – asherbar

+0

죄송합니다, 지금 편집하십시오! – Kugelblitz

+0

게임 활동에 장면을 등록하는 것을 잊지 않았습니까? 뭔가 같아야합니다 :'scene.setOnSceneTouchListener (this);' – asherbar

답변

0

. 다음과 같아야합니다.

scene.setOnSceneTouchListener(this); 

자세한 내용은 this tutorial을 참조하십시오.

+0

감사합니다. 정확히 무슨 일이 일어 났습니까! – Kugelblitz