2013-08-27 28 views
0

我有一個線條圖,我希望實現不會每次都重新繪製網格。我嘗試了以下方法,但網格僅在第一次可見時,它會關閉saveLayer不起作用,或者我只是以錯誤的方式進行。如何儲存背景?

protected void onDraw(Canvas canvas) { 
     if (mRedrawGrid) { 
      drawGrid(canvas); 
      mGridLayer = canvas.saveLayer(0, 0, getWidth(), getHeight(), mPaint, Canvas.MATRIX_SAVE_FLAG); 
     } else 
      canvas.restoreToCount(mGridLayer); 
     drawLineChart(canvas); 
    } 

回答

1

願這可以幫助您:

好友把你的CanvasLinearLayout,然後保存整個LinearLayout's背景到像一個位圖:

ll.buildDrawingCache(); 
Bitmap bt = ll.getDrawingCache();