概述 LiveData是一个可以在给定生命周期内观察到的数据持有者类。一个观察者可以与一个LifecycleOwner成对地添加,并且只有当配对的LifecycleOwner...
概述 Lifecycle是生命周期感知型组件,用于存储有关组件(如 Activity 或 Fragment)的生命周期状态的信息,并允许其他对象观察此状态 使用 导入依赖 L...
EventBus相信很多人都很熟悉,虽然现在谷歌官方出了JetPack来替代,但EventBus的一些设计思路还是值得借鉴的。下面就来写一个简单的EventBus案例 其实E...
换肤是什么? 通俗点来将就是修改View的属性。 就跟一个 setTextColor()一样,区别只是在于换肤一次性操作的是多个View。 换肤的步骤 收集需要换肤的控件 加...
// 中间间隔
if (spanIndex % 2 == 0) {
outRect.left = 0;
outRect.right = interval / 2;
} else {
// item为奇数位,设置其左间隔为5dp
outRect.left = interval / 2;
outRect.right = 0;
}
RecyclerView瀑布流的那些坑RecyclerView的布局排列主要通过布局管理器——LayoutManager去实现,不同的布局能为使得RecyclerView拥有不同的排列效果。StaggeredGr...
本系列博文 基于是前微信高级工程师张绍文专栏 《Android开发高手课》的读书笔记。文章所写内容是本人读完的感悟,需要原文的朋友请自行购买。 存储优化篇 Android分区...
本系列博文 基于是前微信高级工程师张绍文专栏 《Android开发高手课》的读书笔记。文章所写内容是本人读完的感悟,需要原文的朋友请自行购买。 启动优化篇 在说如何对启动时间...