自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 SparseArray原理分析

概述Google推荐新的数据结构SparseArray。SparseArray类上有一段注释: SparseArrays map integers to Objects. Unlike a normal array of Objects, there can be gaps in the indices. It is intended to be more memor...

2018-06-24 21:18:02 418

原创 vlayout原理分析

前言当我们使用RecylerView时,需要绑定一个Adapter和LayoutManager,而vlayout里定义了VirtualLayoutAdapter(继承自Adapter)和VirtualLayoutManager(继承自LayoutManager)来绑定到RecyclerView。VirtualLayoutAdapter它是一个抽象类,很简单:public abstr...

2018-06-23 19:53:16 1116

原创 RecyclerView原理分析

前言RecyclerView是谷歌官方出的一个用于大量数据展示的新控件,可以用来代替传统的ListView,更加强大和灵活。支持RecyclerView高效运行的主要六大类:Adapter:为每一项Item创建视图ViewHolder:承载Item视图的子布局LayoutManager:负责Item视图的布局的显示管理ItemDecoration:给每一项Item视图添加子Vi...

2018-06-23 14:40:25 4920 1

原创 LiveData源码分析

前言公司的项目使用的是MVVM设计模式,自然离不开LiveData,今天就来学习一波LiveData相关的源码。如何感知生命周期LiveData是在LifeCycle包下的,使用LiveData首先来了解一下LifeCycle是如何感知生命周期的。下图Activity的继承体系: 其中有一个SupportActivity:public class SupportAct...

2018-06-18 22:45:52 1532

原创 ARouter源码分析

原理ARouter在编译期的时候,利用自定义注解完成了自动注册。ARouter的编译通过RouteProcessor。process()process()方法相当于处理器的主函数main(),可以在这个方法中扫描、评估和处理注解的代码,以及生成Java文件。 public boolean process(Set<? extends TypeElement>...

2018-06-17 16:13:33 816

空空如也

空空如也

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

TA关注的人

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