自定义view

1.自定义view 基础知识点

View的绘制流程的起点就在ViewRootImpl的performTraversals方法。在这个方法中,会依次调用到三个重要的方法,它们分别是performMeasure、performLayout、performDraw方法;而这三个方法的内部又分别会调用到View的measure、layout、draw方法。
https://www.jianshu.com/p/56006bc13dcf

View为什么会至少进行2次onMeasure、onLayout
https://www.jianshu.com/p/733c7e9fb284

view 的事件分发机制
dispatchTouchEvent()
onInterceptTouchEvent()
onTouchEvent()
https://www.jianshu.com/p/238d1b753e64

关于关于setClickable失效问题
https://blog.csdn.net/u010302764/article/details/52300610

view 滑动冲突
https://www.jianshu.com/p/982a83271327

2.手势密码解锁

1.重写onTouchEvent 方法,监听motionEvent
-ACTION_DOWN 数据界面重置
-ACTION_MOVE 获取当前位置,计算是否是密码点,如果是添加到绘画列表,并且触发绘制
-ACTION_UP、ACTION_CANCEL 将绘制列表返回
2.重写onDraw 方法
-绘制出坐标点,如果点在绘制列表中,加上点击装饰绘画
-绘制出点与点之间的连线,按照绘制列表顺序,取前后点依次链接手势轨迹。

3.加载大图的区域解码

BitmapRegionDecoder:区域解码器
(https://blog.csdn.net/YoungOne2333/article/details/105793292/)

4、其他总结文章https://github.com/xinghongfei/awesome-view

你可能感兴趣的:(自定义view)