请解释一下在Android中绘图缓存是如何工作的。我正在实现一个自定义的View子类,希望我的绘图能够被系统缓存。在View构造函数中,我调用了什么方法?
setDrawingCacheEnabled(true);
然后在 draw(Canvas c) 方法中,我执行:
Bitmap cac = getDrawingCache();
if(cac != null)
{
c.drawBitmap(cac, 0, 0, new Paint());
return;
}
尽管我调用了getDrawingCache()
,但它对我返回了null。我的draw()
既没有从setDrawingCacheEnabled()
中被调用,也没有从getDrawingCache()
中被调用。请问我做错了什么?