Android Framework知识整理:WindowManager体系(上)
前言
大家好,由于工作和面试需要,笔者结合大佬们的经验以及自身对源码理解,...
基于Android T:包管理机制详解(下)
前言
前面一篇文章我们讲解了PKMS的启动过程。
PKMS启动过程中主要做了以下事情...
基于Android T:包管理机制详解(上)
前言
PackageManagerService(简称PKMS)是Android系统核心服务之一,和AMS,WM...
Android使用LruCache、DiskLruCache实现图片缓存+图片瀑布流
写在前面
PS:本文中的例子来源于官网地址:Caching Bitmaps,源码地址(自备梯子...
RecyclerView 性能优化 | 把加载表项耗时减半 (一)预优化,先量化动态构建布局,弃用 xml不同的 ViewGroup,不同的 measure + layout 耗时Talk is cheap, show me the cod
构建 Android App 界面时,RecyclerView 出场率很高。它的加载性能影响着用户体...
android源码:所有 Jetpack compose UI 元素、布局、小部件和演示屏幕集合
Jetpack Compose 是 Android 用于构建本机 UI 的现代工具包。它简化并加速了 Andr...
Kotlin 基本类型、函数、lambda、类与对象的写法
1. 基本类型2. 关键字3. 函数4. Kotlin 方法可以直接写在 .kt 文件里,不用写在某...
kotlin泛型
泛型使用方法
在类上使用泛型
类上面使用泛型,需要把泛型声明在类名后...
Kotlin 进阶 | 不变型、协变、逆变子类型泛型中的子类型不变型协变逆变PECS 原则 & POCI 原则类型投影推荐阅读
引入泛型之后,子类型的概念变得复杂,好不容易用刚学会的泛型定义了方法,用起...
Kotlin中嵌套类、数据类、枚举类和密封类的详解
一、嵌套类
如果一个类只对另一个类有用,那么将其嵌入到该类中并使这两个类保...
Kotlin 中定义类、field关键字,主构造函数和次构造函数详解
1、定义类与field关键字,以及计算属性,和防范竞态条件
class Student {
...
Kotlin 中初始化块、初始化的顺序、lateinit延迟初始化详解
1、初始化块:初始化块可以设置变量或值,以及执行有效性检查,如检查传给某构...
Kotlin 中List集合,Set集合,Map集合,数组的详解
1、创建不可变List集合
fun main() {
val list = listOf("Jason", "Jack...
Kotlin中扩展函数、infix关键字、apply函数和DSL的详解
一、扩展函数
定义扩展函数扩展可以在不直接修改类定义的情况下增加类功能,扩...
Kotlin中与Java互操作与可空性、类型映射、属性访问、@JvmOverloads、@JvmField、@JvmStatic、@Throws和函数类型操作详解
一、Kotlin与Java互操作与可空性。
Kotlin与Java互操作性与可空性
Java世界...
Kotlin 中变量,类型,表达式,函数详解
一、变量,编译时变量
1、要声明可修改变量,使用var关键字。
2、要声明只...
Kotlin中正确的使用Handler
1. Handler造成的内存泄漏2. Kotlin中使用Handler
Handler造成的内存泄漏
Handle...
Kotlin中空安全操作符,异常处理和自定义异常,以及先决条件函数详解
一、Kotlin的可空性
null 在java中我们司空见惯的空指针异常NullPointerExcep...
Kotlin | 使用vararg可变参数
背景
一般在项目开发中,我们经常会在关键节点上埋点,而且埋点中会增加一些额...