起风了

“路海长 青夜旷 越过群山追斜阳”

Jetpack 源码分析(三) – ViewModel源码分析

Jetpack 源码分析(三) – ViewModel源码分析缩略图
  最初,我认为ViewModel的原理是非常简单,包括网络上有很多相关的源码分析的文章都是这么认为。但是当我再一次认认真真的官方文档之后,才知道ViewModel涉及到的东西远不及我们所知道的那些。  众所周知,ViewModel保存的数据,在配置更改之后依然也是存在的。但是这就是引出了一个问题,ViewModel和onSaveI...

Android 源码分析 – View的measure、layout、draw三大流程

Android 源码分析 – View的measure、layout、draw三大流程缩略图
  经过两个多月的框架源码轰炸,感觉自己的脑子变得有点懵逼了。在这两个多月里面,先后看了RxJava、OkHttp和Retrofit的源码,并且将自己的理解写成了博客,作为记录;后续又看了EventBus和ButterKnife的源码,本来都想写成博客的,但是觉得这两个框架比较简单,因此就没有写(纯粹个人想法,大家有意见的话,...

RecyclerView 扩展(三) – 使用ItemTouchHelper和LayoutManager实现滑动卡片效果

RecyclerView 扩展(三) – 使用ItemTouchHelper和LayoutManager实现滑动卡片效果缩略图
  最近楼主在忙碌于自己的毕设项目,在毕设当中需要实现一个滑动卡片的效果,楼主花了一点时间自己实现了一下,使用是ItemTouchHelper和LayoutManager方式实现的。我们先来看一下效果:   上面的效果说难也不难,说不难呢,但是这里面又有很多的小细节需要注意。  有人说,这动画很好做啊,使用ViewPag...

RecyclerView 源码分析(四) – RecyclerView的动画机制

RecyclerView 源码分析(四) – RecyclerView的动画机制缩略图
  距离上一篇RecyclerView源码分析的文章已经过去了10多天,今天我们将来看看RecyclerView的动画机制。不过,本文不会分析ItemAnimator相关的知识,而是理解RecyclerView怎么执行ItemAnimator的,有关ItemAniamtor的知识,后面我会写专门的文章来分析。  本文参考资料: RecyclerView animations - AndroidD...

Android 8.0新特性-取消大部分静态注册广播

Android 8.0新特性-取消大部分静态注册广播缩略图
    今天楼主在写一个广播的demo,功能非常的简单,就是一个应用发送一个自定义的广播,同时在这个应用里面定义了一个广播接受者,并且在AndroidManifest文件中进行静态的注册。Demo看上去非常的简单,但是在Android 8.0的设备运行这个应用,始终不能接收到这个发送出去的广播,感觉非常的蒙蔽。关键是,在An...

Android 内存优化-ViewPager的内存优化

Android 内存优化-ViewPager的内存优化缩略图
    我们知道,在Android中ViewPager主要是用于多个View的切换,本文不会介绍ViewPager的基本使用,而是介绍怎么对ViewPager的内存优化。ViewPager是继承于ViewGroup,所以它里面会有很多的子View,这里的目的就是对那些子View的复用,同时如果还有ImageView的话,还对Bitmap的回收进行介绍。 ViewPager的基本...

RecyclerView 扩展(四) – 使用ItemTouchHelper实现QQ侧滑删除效果

RecyclerView 扩展(四) – 使用ItemTouchHelper实现QQ侧滑删除效果缩略图
  我们平时在QQ过程中,有一个效果是我们不可忽略的,那就是消息记录的侧滑删除功能,我相信这个功能很多人都用过吧。不得不说,QQ的交互确实做得非常优秀。今天,我们模仿一下QQ的侧滑效果(这本身是楼主毕设里面的一个小效果,我只是将它分离出来),首先来看看Demo的效果:   今天,我们就来看看上面...

2019年个人年度总结

2019年个人年度总结缩略图
  一年的时间如白驹过隙,2019年马上就要过去,崭新的2020年即将到来,在此提前祝大家新年快乐!今天也是2019年最后一个周六,在此我打算写一篇文章来记录2019年所做的事,总结过往,展望未来。 1. 总结2019   在写这篇文章之前,我在脑子里面简单过了一遍整个2019年所做的事。2019年对于我来说是非常特殊的一...

RecyclerView扩展(五) – ViewPager2的源码分析

RecyclerView扩展(五) – ViewPager2的源码分析缩略图
  ViewPager2是Google爸爸在几个月前推出来的新控件,此控件的目的就是为了替代传统的ViewPager控件。至于为什么要淘汰ViewPager,我想就不用解释这其中的原因吧,ViewPager历来最大的诟病就是不会复用View(其实我对ViewPager的原理了解的不多,各位大佬就当我信口雌黄吧??。)。而ViewPager2内部是通过Recyc...

RecyclerView扩展(六) – RecyclerView平滑滑动的实现原理

RecyclerView扩展(六) – RecyclerView平滑滑动的实现原理缩略图
  时隔一年多,我又来更新RecyclerView相关的文章,感觉上一篇RecyclerView相关文章的完成就在昨天(手动狗头)。今天,我们来学习一下RecyclerView内部的smoothScroll相关方法的原理。  在这之前,我先说一下这篇文章的背景。最近在做一个RecyclerView相关的需求,用到了平滑滑动相关的方法,在开发中发现了,G...