android绘图机制_双缓存

等同于咱搬砖原理

 

砖很多情况下:

一堆砖在那,我一次只能拿5块,得来来回回跑上好多次,累死个人,这就是没使用双缓冲

如果开一卡车,一车装满,油门一踩就过去了,省事。

 

少量砖情况下:

走个两趟,完事,开卡车就有点过头了。

 

1、基本概念

Canvas:画布

Paint:画笔

Bitmap:图象的抽象

2、android中绘制流程

View被调用onDraw方法:

(显示缓冲区)第一步:Paint控制笔触属性-》Canvas持有Bitmap,把图象画出来封装到Bitmap中

第二步:onDraw方法中使用默认的Canvas把第一步的Bitmap画出来

 

大致代码:

init(){

    bufferBitmap = Bitmap.createBitmap(getWidth(),getHeight(),Bitmap.Config.ARGB.8888);

    bufferCanvas=new Canvas(bufferBitmap);

    bufferCanvas.drawXXX(xx,xx,paint);

}

先用一个Bitmap存起,Canvas持有Bitmap,Canvas画出图象

再在绘制时直接绘制这个Bitmap

public void onDraw(Canvas c){

    c.drawBitmap(bufferBitmap,0,0,null);

 

 

 

你可能感兴趣的:(Android相关)