重拾基础,备忘备战~
算法总结-VAlgorithm -> LookUp
设计模式-VDesignPatterns -> LookUp
Android知识-VAndroidReview ->
阅读全文
LRU最近最少使用算法。
基本原理
-要求查找快,插入快,删除快,有顺序之分。哈希表查找快,但是数据无固定顺序;链表有顺序之分,插入删除快,但是查找慢。所以结合一下,形成一种新的数据结构:哈希链表。
按顺序插入 ,所以需要双向链表。
LinkedHashMap,使用 accessOrder=true 基于顺序访问,元素访问后被移动到末尾。
自己动手实现LRU12...
阅读全文
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
阅读全文
ActivityResult 新时代跳转 Activity 获取返回值,我们怎么做?
AndroidX Activity 1.2.0-alpha02 和 Fragment 1.3.0-alpha02 是新旧时代的划分线。
调用方假设为 IntentsActivity,被调用方假设为 IntentResultActivity。
旧石器时代:
调用方:
调用 startActivityForResult 传入请求码,传输数据(可选)。
覆写 onActivityResult 方法,根据请求码和结果码获取返回结果信息。
123
阅读全文
哈喽,Android 小伙伴们~
这篇文章将提到 Fragment 中的两种 lifecycleowners。因为作为一个 Android 开发者,我们能够简单地使用 Fragment 作为 lifecycle owner,但某些情境下这可能会使你烦恼。
让我们先来看一下 Fragment 的生命周期:
从图中我们可以看到 onCreate 和 onDestroy 只调用了一次。这些是 Fragment 的主要的生命周期方法。 onCreateView 和 onDestroyView 根据 Fragment 的状态来被调用,因为它们是 Fragment 中 View 的主要生命周期方法。
因此,如果我们在 onCreate 中绑定 LiveData ,仅仅注册一次似乎是很合适很健康的。
1...
阅读全文
findBiewByIdfindBiewById 是 Android 开发中在布局中查找 View 元素的 Api。
findBiewById 基本使用12345678
阅读全文
预加载ViewPager 控件有一个预加载机制,即默认情况下当前页面左右两侧的 1 个页面会被预加载,以方便用户滑动切换到相邻的界面时,更流畅地加载界面(节省了初始化时间)。
从源码里可以看到,ViewPager 的预加载机制是不可取消的,预加载数量 limit 至少为 1,如果外部设置小于 1,内部会自动置为 1。
123456789
阅读全文