- 博客(3)
- 收藏
- 关注
原创 小白的分享(二)从源码分析事件分发的各种情况
整个的事件分发是一个完整的流程,是从action_down->action_move->action_up。 废话不多说,直接从activity出发。 当用户按下手指时,事件如何从activity传入到viewgroup 1.1 以下是activity.java的dispatchTouchEvent方法 public boolean dispatchTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEve
2021-01-14 16:38:26 104
原创 小白的分享(一)常用数据结构的时间复杂度分析
: 数组 查询 数组查询快,给定index直接可以查询数据,所以时间复杂度是O(1)。 给定值需要查找数据,所以时间复杂度是O(n)。 增加删除 因为无论是添加还是删除,后面的元素都需要向前补位调整或者向后移位。所以时间复杂度是O(n),而操作最后一个元素的时间复杂度是O(1)。 链表 1. 查询 因为我根本不知道值对应的元素在哪里,所以我必须去遍历寻找值对应的元素,所以无论是单链表还是双链表,所以查询和更改时间复杂度都是O(n)。 2. 增加删除 对于链表来说,增加和删除的关键点就是是否知道前驱
2020-12-28 22:24:46 816
原创 手写aidl,一个可以让小白看懂代码的binder理解。
binder的原理和实现方法不过多赘述。我们这里主要是从代码的层面告诉你如何去看binder在代码中的使用 直接上代码 binderserver端的services代码。 public class BinderService extends Service{ private List<Dog> mDogsList = new ArrayList<Dog>(); private final IDogManager.DogManagerImpl mBinder =
2020-12-25 11:19:21 2336 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人