Android:Canvas无法从外部清除onDraw

时间:2015-12-14 03:29:44

标签: android canvas bitmap drawing

我正在尝试在Surface视图上绘制一个Bitmap:

 private void draw1() {
        if (ourHolder.getSurface().isValid()) {
            Log.i("View", "drawing...");
            canvas = ourHolder.lockCanvas(null);
            canvas.drawColor(Color.GREEN, PorterDuff.Mode.CLEAR);
            canvas.drawBitmap(playerShip.getBitmap(), 50, 50, paint);
            ourHolder.unlockCanvasAndPost(canvas);
        } else {
            Log.i("View", "surface is not valid");
        }
    }

但没有出现。只是一个黑屏。

但如果我加上这个:

@Override
    protected void onDraw(Canvas canvas) {
        canvas.drawColor(Color.GREEN, PorterDuff.Mode.CLEAR);
        super.onDraw(canvas);
    }

绘制位图。

是否需要我清除画布,只能使用onDraw()方法?

另外,我是Android新手。欢迎任何关于写作风格的建议。

0 个答案:

没有答案