@Override protected void onDraw(Canvas canvas) { mDrawCount++; mCoreView.onSize(mViewAdapter, getWidth(), getHeight()); if (mCachedBitmap != null) { drawShapes(canvas, mCanvasOnDraw, true); mViewAdapter.fireDynDrawEnded(); } else if (!regen(false)) { // 首次onDraw,但视图太大无法创建缓存位图 canvas.drawColor(mBkColor); drawShapes(canvas, mCanvasOnDraw, true); } }