2013-05-29 93 views
0

我试图拆离行之后我删除了我的手指等ACTION_UP后,除去线.. 它似乎并没有工作AndEngine去除手指

@Override 
    public void onCreateScene(OnCreateSceneCallback pOnCreateSceneCallback) throws Exception { 
      mScene = new Scene(); 

      mScene.setOnSceneTouchListener(new IOnSceneTouchListener() { 
       @Override 
       public boolean onSceneTouchEvent(final Scene pScene, final TouchEvent pSceneTouchEvent) { 
        if(pSceneTouchEvent.getAction() == TouchEvent.ACTION_DOWN) { 
         isDrawing = true; 
         i = 0; 
        } 
        if (isDrawing = true) { 
         rec[i] = new Rectangle(pSceneTouchEvent.getX(), pSceneTouchEvent.getY(), 1, 1, getVertexBufferObjectManager()); 
         if (i != 0) { 
         l = new Line(rec[i-1].getX(), rec[i-1].getY(), rec[i].getX(), rec[i].getY(), getVertexBufferObjectManager()); 
         l.setColor(0.5f, 1f, 0.3f); 
         mScene.attachChild(l); 
         } 
         i++; 
        } 
        if(pSceneTouchEvent.getAction() == TouchEvent.ACTION_UP) { 
         isDrawing = false; 
         mScene.detachChild(l); 
        } 
        return true; 
       } 
      }); 

      pOnCreateSceneCallback.onCreateSceneFinished(mScene); 
    } 

在ACTION_DOWN它会划清界线使用我的手指,但在ACTION_UP行应该分离,为什么不是?

回答

1

这里是你的问题:

if(isDrawing = true) 

您分配isDrawing为“真”,而不是它的值与“真”。 THEN,if语句被选中,每次都是真的。这会让你画出每一次。 更改为:

if(isDrawing)