自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

chengkun_123的博客

Keep learning and connet dots.

  • 博客(5)
  • 收藏
  • 关注

原创 CoordinatorLayout源码解析之从NestedScrolling说起

概述CoordinatorLayout(下面简称CL)出来也有很长时间了,平常也仅限于API的调用,如果不知道其中的原理,出了问题也不好去解决。所以今次决定深入其内部一探究竟(…)。相比于RecyclerView的1W+行的源码,CL包含的内容算是少的了。但是本系列文章并不想从CL作为一个ViewGroup的角度去分析它的onMeasure、onLayout、onDraw和滑动等等,而是想从比较有特

2017-07-30 20:59:16 1238 1

原创 图文助你理解Binder

概述本文尽量屏蔽不影响理解的底层细节,因为太过深入的底层细节会让人深陷其中无法自拔,造成不能很好地从整体上对Binder进行把握。The WhatAndroid是基于Linux系统进行开发的,采用了进程隔离机制,每个进程都有自己独立的地址空间即虚拟地址,每个进程似乎都可以占满所有的内存运行,而实际上却访问的是不同的物理内存。也就是说各个进程之间数据相互独立,互不影响,一个进程崩溃并不会影响到其他进程

2017-07-22 11:29:54 519

原创 RecycleView源码浅析之Recycler+滑动

概述Recycler解决了两个哲学问题,VH从哪里来以及VH到哪里去,前两篇讲到RV的绘制流程和动画都回避了View的获取以及回收问题,其实是因为Recycler帮我们完成了而且封装得很好。这一篇就来看看Recycler是如何帮我们做到这些的,顺带看一下RV这个ViewGroup对触摸事件的处理。onTouchEvent()和ViewPager差不多,RV分为拖动和fling,scrollByInt

2017-07-13 17:07:24 1461

原创 RecyclerView源码浅析之数据更改与动画

概述上一篇我们针对RecyclerView的绘制流程做了简单的分析,重点放在了dispatchLayoutStep2()这个真正对子View操作的函数上,它完成了:子View的添加(LinearLayoutManager通过ChildHelper添加)、测量、布局。绘制流程虽然有了大概的了解,但却引出了很多问题:dispatchLayoutStep1()和dispatchLayoutStep3()有

2017-07-11 17:54:14 1528

原创 RecyclerView源码浅析之测量与布局

概述源码一万多行,是ViewPager的三倍多,如果不能把握住主线,会很容易迷失在源码的海洋。RecyclerView做得比ViewPager好的地方在于,它进行良好的封装和解耦,每一个类完成自己的功能,结构十分清晰。但是对于我们来说,如果不能对这些模块先有一个大概的的了解,那么阅读源码的常常会因为不清楚一个类的作用而不知所云。所以这篇文章的主线是解读RecyclerView的测量、布局和绘制,同时

2017-07-03 21:11:29 952

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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