CoreAnimation系要注意的一点是必须是真机调试,用于调试离屏渲染,绘图,动画,等操作,调试需注意。
【比较重要】
"Color BlendedLayers":图层混合
显示出被混合的图层BlendedLayer(用红色标注),BlendedLayer是因为这些Layer是透明的(Transparent),系统在渲染这些view时需要将该view和下层view混合(Blend)后才能计算出该像素点的实际颜色。所以红色越少越好
"Color Hits Green and Misses Red":图层缓存
很多视图Layer由于Shadow、Mask和Gradient等原因渲染很高,因此UIKit提供了API用于缓存这些Layer:[layersetShouldRasterize:YES],系统会将这些Layer缓存成Bitmap位图供渲染使用,如果失效时便丢弃这些Bitmap重新生成。所以绿色越多,红色越少越好
"Color Offscreen-Rendered Yellow":离屏渲染
Offscreen-Rendering离屏渲染意思是iOS要显示一个视图时,需要先在后台用CPU计算出视图的Bitmap,再交给GPU做Onscreen-Rendering显示在屏幕上,因为显示一个视图需要两次计算,所以这种Offscreen-Rendering会导致app的图形性能下降。所以黄色越少越好。
【次重要】
"Color Misaligned Images":图片缩放
MisalignedImage表示要绘制的点无法直接映射到频幕上的像素点,此时系统需要对相邻的像素点做anti-aliasing反锯齿计算,增加了图形负担,通常这种问题出在对某些View的Frame重新计算和设置时产生的。
"Color Copied images":标注应用绘制时被Core Animation复制的图片
"Color Immediately":Instruments在做color-flush操作时取消10毫秒的延时
"Color Compositing Fast-Path Blue":标记由硬件绘制的路径
"Flash Updated Regions":重绘的区域
网友评论