起风了

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

从一次真实经历中说说使用嵌套滑动过程中常见的坑

从一次真实经历中说说使用嵌套滑动过程中常见的坑缩略图
  本来认为自己对嵌套滑动的理解和应用还是不错的,但是最近做了一个跟手动画的需求,使用嵌套滑动发现了这里有了很多的坑,本文来根据自身的踩坑经历和经验来总结使用嵌套滑动的注意项。   本文不会介绍嵌套滑动的基本使用,不了解的同学可以参考我的文章:Android 源码分析 - 嵌套滑动机制的实现原理。同时...

Android 源码分析 – LayoutInflater创建View的流程分析

Android 源码分析 – LayoutInflater创建View的流程分析缩略图
  在日常开发中,我经常使用LayoutInflater将一个xml布局初始化为一个View对象,但是对它内部原理的了解却是少之又少。今天,我们就来看看LayoutInflater。   本文主要内容: LayoutInflater创建流程。我们通过Activity或者LayoutInflater的from方法来创建一个对象,我们去看看这俩方法有啥区别。 View 创建...

你的单例模式是真的线程安全吗?

你的单例模式是真的线程安全吗?缩略图
  熟悉设计模式的朋友应该都知道单例模式,这里不再对单例模式的基础进行介绍,本文重点在于解释为什么双重检查没有达到真正意义上的线程安全,当然也要介绍怎么达到真正的线程安全。  本文的知识点主要来源:   1.方腾飞、魏鹏、程晓明三位老师的《Java 并发编程的艺术》   2.周志明老师的《深入理解Java虚拟...

Java 源码分析-ConcurrentHashMap(1.8)

Java 源码分析-ConcurrentHashMap(1.8)缩略图
  最近总是在分析源码,感觉源码也不是想象上的那么难,今天我来记录一下我对ConcurrentHashMap的理解。这里只敢说记录,不敢说分析,因为ConcurrentHashMap的代码确实有点难以理解,本文不对代码进行死磕,也就是说,可能不会对某一行代码进行死磕,而是对整个ConcurrentHashMap类进行整体的理解。  本文参考...

Blade – 基本使用

Blade – 基本使用缩略图
  之前学习很多的框架,我个人觉得学习框架的目的主要两点: 理解框架的原理,在实际开发中,才会得心应手,游刃有余。 学习框架的设计思想和技术亮点。我觉得这才是学习框架的最终目的,只有学到了东西,才算是对自己有提升。   今天,我写这篇文章主要是为了介绍我的第一个框架--Blade。Blade其实不是非...

SpringBoot – 使用intellij idea创建一个SpringBoot + mybatis的Demo

SpringBoot – 使用intellij idea创建一个SpringBoot + mybatis的Demo缩略图
  最近在准备做毕设,由于需要后台,所以得学习一下后台的相关知识。之前学过JavaWeb的servlet的那套,不过觉得它的配置太麻烦了,同时写起来也是非常的复杂,于是打算来简单学习SpringBoot + mybatis的知识。本文是入门的文章,大佬们请见谅。  编译环境: jdk 1.8.0_191 intellij idea 2018 3.2 gradle 4.1...

RecyclerView 源码分析(六) – DiffUtil的差量算法分析

RecyclerView 源码分析(六) – DiffUtil的差量算法分析缩略图
  首先,我估计有一部分的同学可能还不知道DiffUtil是什么,说实话,之前我也根本不了解这是什么东西。DiffUtil是我在公司实习的时候了解到的一个类,在那之前,我使用RecyclerView的方式也是大部分的人差不多,就是RecyclerView和它的四大组成部分任意组合。  当时在公司第一次看到这个东西的时候,立即两眼...

RecyclerView 源码分析(八) – ItemAnimator的源码分析(源码分析系列终篇)

RecyclerView 源码分析(八) – ItemAnimator的源码分析(源码分析系列终篇)缩略图
  ItemAnimator作为RecyclerView的主要组成部分之一,其重要性自然不可言喻。因为ItemAnimator的存在,所以出现了很多精彩纷呈的动画,这使得RecyclerView更加惹人喜爱。因此,学习ItemAnimator的源码是势在必行的,因为我们了解原理之后,就可以自定义动画了,不再受人束缚。  本文参考资料: recyclerview...

CoordinatorLayout 学习(二) – RecyclerView和AppBarLayout的联动分析

CoordinatorLayout 学习(二) – RecyclerView和AppBarLayout的联动分析缩略图
  我们都知道,如果想要使用CoordinatorLayout实现折叠布局,只有靠AppBarLayout才会生效。但是我们不禁有一个疑问,就是为什么AppBarLayout能够与RecyclerView联动,它是怎么知道RecyclerView上滑还是下滑的呢?这是本文分析的一个重点。  本文参考资料: 针对 CoordinatorLayout 及 Behavior 的一次细节较...

CoordinatorLayout 学习(三) – 通过自定义Behavior解决AppBarLayout 不能Fling的问题

CoordinatorLayout 学习(三) – 通过自定义Behavior解决AppBarLayout 不能Fling的问题缩略图
  AppBarLayout有一个非常恶心的设计,就是将自身的Fling完全内部消化,从而导致了RecyclerView之类的控件不能Fling。本文打算采用自定义Behavior的方法来解决该问题,应该是如今网上最简单的方法。  我在思考自己的解决方法之前,在网上简单的搜索一番前人的答案,发现已知的答案都非常的麻烦,好多的方法都...