在学习公司读书翻页控件的时候发现有许多Canvas的用法不知道,因此上网查找些资料看看。
俺的智商实在是不敢恭维啊,看了N久才理解了别人写的总结啥的。
我首先看的是这位仁兄的文字:
Android中Canvas的clipRect参数Region.OP的理解
大家可以去那里看看作者的描述,我简单的贴重点在这里:
/**
* 一直对clipRect的op参数有点迷惑,今天好好实验了一下,总结得到如下结果:
*
* 为了方便说明,把第一次clipRect的绘制范围设为A,第二次clipRect设定的范围设为B
*
* Op.DIFFERENCE,实际上就是求得的A和B的差集范围,即A-B,只有在此范围内的绘制内容才会被显示;
*
* Op.REVERSE_DIFFERENCE,实际上就是求得的B和A的差集范围,即B-A,只有在此范围内的绘制内容才会被显示;;
*
* Op.INTERSECT,即A和B的交集范围,只有在此范围内的绘制内容才会被显示;
*
* Op.REPLACE,不论A和B的集合状况,B的范围将全部进行显示,如果和A有交集,则将覆盖A的交集范围;
*
* Op.UNION,即A和B的并集范围,即两者所包括的范围的绘制内容都会被显示;
*
* Op.XOR,A和B的补集范围,此例中即A除去B以外的范围,只有在此范围内的绘制内容才会被显示;
*/
作者其实说的很明白了,但是我死活是理解不了,哪次他娘的算第二次啊,因为我看的是ApiDemos中的com.example.android.apis.graphics