协程和线程的差异 线程的目的是提高CPU资源使用率, 使多个任务得以并行的运行,是为了服务于机器的. 协程的目的是为了让多个任务之间更好的协作,...
前言 LinkedList是基于双向链表实现的,除了可以当链表来操作,它还可以当做栈,队列以及双端队列来使用,且是非线程安全。 LinkedLi...
数组(Array) 数组指的就是一组相关类型的变量集合,并且这些变量可以按照统一的方式进行操作,数组数据引用数据类型,在堆中进行内存分配,在内存...
HashMap概述 官方文档中这样描述HashMap: Hash table based implementation of the <tt>M...
前言 分析WindowManager之前先了解一下 Window。Window也就是窗口,它是一个抽象类,其具体实现类是PhoneWindow。...
写在前面 因为ViewGroup继承View,View中的measure方法由于是final型不能重载,onMeasure方法也没有重写。Vie...
写在前面 自定义View的绘制流程:onMeasure() -> onLayout() ->onDraw(),在分析源码之前需要了解一下Meas...
写在前面 首先要了解事件分发机制的传递流程是在点击事件发生后,事件先传递到Activity,然后传递到ViewGroup,最终传递到View。主...
写在前面 我们知道在使用handler进行消息传递时,需要创建Looper.prepare(),以及执行Looper.loop()方法不了解的可...