自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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关注的人

提示
确定要删除当前文章?
取消 删除