просто очистит текущий клип (как пробивая дыру в холсте).

сделать простую игру, я использовал шаблон, который рисует холст с растровыми изображениями:

private void doDraw(Canvas canvas) {
    for (int i=0;i<8;i++)
        for (int j=0;j<9;j++)
            for (int k=0;k<7;k++)   {
    canvas.drawBitmap(mBits[allBits[i][j][k]], i*50 -k*7, j*50 -k*7, null); } }

(Холст определяется в «run ()» / SurfaceView живет в GameThread.)

Мой первый вопрос: как очистить (или перерисовать)все холст для нового макета?
Во-вторых, как я могу обновить только часть экрана?

// This is the routine that calls "doDraw":
public void run() {
    while (mRun) {
        Canvas c = null;
        try {
            c = mSurfaceHolder.lockCanvas(null);
            synchronized (mSurfaceHolder) {
                if (mMode == STATE_RUNNING) 
                    updateGame();
                doDraw(c);          }
        } finally {
            if (c != null) {
                mSurfaceHolder.unlockCanvasAndPost(c);  }   }   }       }

Ответы на вопрос(1)

Ваш ответ на вопрос