渲染性能
Android UI的工作分两阶段:
1.在UI线程Record View#draw
2.在RenderThread线程DrawFrame(RenderThread:使用GPU资源的线程)
第一阶段随着View的invalidated在draw(Canvas)中进行
第二阶段native RenderThread基于Record View#draw步骤所产生的数据内容而进行相应的处理。
渲染性能:UI线程
如果Record View#draw占用时间长,比如在UI线程绘制bitmap。当然,这种直接在UI线程绘制bitmap的方式应该避免使用。
示例1:在主线程完成bitmap绘制,并显示圆角头像自定义控件,onDraw代码实现可能如:
Canvas bitmapCanvas = new Canvas(roundedOutputBitmap);
Paint paint = new Paint();
paint.setAntiAlias(true);
bitmapCanvas.drawRoundRect(0, 0,
roundedOutput