万丈高楼平地起

重拾基础,备忘备战~ 算法总结-VAlgorithm -> LookUp 设计模式-VDesignPatterns -> LookUp Android知识-VAndroidReview ->     阅读全文
CodePoem's avatar
CodePoem 3月 20, 2020

简析LRU

LRU最近最少使用算法。 基本原理 -要求查找快,插入快,删除快,有顺序之分。哈希表查找快,但是数据无固定顺序;链表有顺序之分,插入删除快,但是查找慢。所以结合一下,形成一种新的数据结构:哈希链表。 按顺序插入 ,所以需要双向链表。 LinkedHashMap,使用 accessOrder=true 基于顺序访问,元素访问后被移动到末尾。 自己动手实现LRU12...     阅读全文
CodePoem's avatar
CodePoem 12月 14, 2020

简析Glide

Glide123Glide.with(context) .load(myUrl) .into(imageView); 生命周期     阅读全文
CodePoem's avatar
CodePoem 12月 14, 2020

简析LeakCanary

LeakCanary使用添加依赖(release有no-op版)然后在 Application 初始化。 123456dependencies {     阅读全文
CodePoem's avatar
CodePoem 12月 14, 2020

简析OkHttp

OkHttp是对 Socket 的封装。URLConnection 在4.4以后底层也使用了 OkHttp。 Android源码中 /external/okhttp/jarjar-rules.txt 中表示com.squareup开关的包会在编译时打包成com.android开头的包。 12rule com.squareup.** com.android.@1rule okio.** com.android.okio.@1     阅读全文
CodePoem's avatar
CodePoem 12月 14, 2020

优雅Intent ActivityResult

ActivityResult 新时代跳转 Activity 获取返回值,我们怎么做? AndroidX Activity 1.2.0-alpha02 和 Fragment 1.3.0-alpha02 是新旧时代的划分线。 调用方假设为 IntentsActivity,被调用方假设为 IntentResultActivity。 旧石器时代: 调用方: 调用 startActivityForResult 传入请求码,传输数据(可选)。 覆写 onActivityResult 方法,根据请求码和结果码获取返回结果信息。 123     阅读全文
CodePoem's avatar
CodePoem 12月 13, 2020

译-viewlifecycleowner与this对比

哈喽,Android 小伙伴们~ 这篇文章将提到 Fragment 中的两种 lifecycleowners。因为作为一个 Android 开发者,我们能够简单地使用 Fragment 作为 lifecycle owner,但某些情境下这可能会使你烦恼。 让我们先来看一下 Fragment 的生命周期: 从图中我们可以看到 onCreate 和 onDestroy 只调用了一次。这些是 Fragment 的主要的生命周期方法。 onCreateView 和 onDestroyView 根据 Fragment 的状态来被调用,因为它们是 Fragment 中 View 的主要生命周期方法。 因此,如果我们在 onCreate 中绑定 LiveData ,仅仅注册一次似乎是很合适很健康的。 1...     阅读全文
CodePoem's avatar
CodePoem 11月 24, 2020

优雅FindViewById

findBiewByIdfindBiewById 是 Android 开发中在布局中查找 View 元素的 Api。 findBiewById 基本使用12345678     阅读全文
CodePoem's avatar
CodePoem 4月 18, 2020

Fragment可见性

1234567891011121314151617...     阅读全文
CodePoem's avatar
CodePoem 3月 05, 2020

ViewPager下Fragment预加载与懒加载

预加载ViewPager 控件有一个预加载机制,即默认情况下当前页面左右两侧的 1 个页面会被预加载,以方便用户滑动切换到相邻的界面时,更流畅地加载界面(节省了初始化时间)。 从源码里可以看到,ViewPager 的预加载机制是不可取消的,预加载数量 limit 至少为 1,如果外部设置小于 1,内部会自动置为 1。 123456789     阅读全文
CodePoem's avatar
CodePoem 1月 11, 2020