前言 不得不说 Google 的适配是真的烦。真的是一不小心各种坑,市面上的 Android 版本也很多,各种各样的屏幕也很多。最近做的项目在自己手上测试的都还行,直接丢给
Java 动态代理
动态代理和静态代理一般在设计模式中的定义为代理设计模式 定义: 为其他对象提供一种代理以控制对这个对象的访问 使用场景: 当无法或者不想直接访问某个
Compose 动画基础篇之各种 Spec
向左推
|
|
向右推
Android源码之单例设计模式
介绍
单例设计模式可以说是我们在开发中最常用的一个设计模式了, 单利设计模式的核心思想也就是: 在整个应用的生命周期内, 只有一个对象实例的存在
LayoutInflater 单例分析
在 Activity View 加载一个布局的时候, 通常是这样做的
ArrayList源码分析
开篇之前, 想想下面几个问题的答案是什么? 有的时候我们看源码也是, 并不是说一味盲目的直接跑到源码中去看, 我们带着这几个问题去阅读源码, 反而会轻
EventBus 源码分析
大致流程 EventBus 是一种用于 Android 的事件发布-订阅总线, 是一个可以实现组件间通信的一个第三方框架, 使用起来非常的简单, 一共也就是 4 个步骤, 注册订阅, 发送
HashMap源码分析
HashMap 可以说是我们在开发中经常使用的到, 在 Java 的数据结构基础里,HashMap 无疑是一个非常重要的数据结构 现在看看源码里面的方法具体都干了一下什么
Java 中的泛型
假设有 3 个类, 他们的继承关系是这样的 1 2 public class Person { } 1 2 public class Gril extends Person { } 1 2 public class Boy extends Person { } 1 2 public class Father { } 在类上指定的泛型, 那么在当前类, 使用的都
Kotlin 扩展函数 let with run apply also 的使用初探
最近的项目中也是基本处于是逐渐切换 Kotlin 的状态, 以下是在项目中经常使用到的几个扩展函数, 做一个记录, 不得不说有的时候真的比 Java 方便很多 内联扩展函数
View 的 draw 过程
Draw 过程 View 的工作流程主要是 measure layout draw 这三大流程完成的, 测量, 布局, 绘制, 其中 measure 测量布局的宽高, layout 确定 View 在布局中 4 个顶点的位置, draw 则是将布局绘制在屏