请从6.1 与 6.2 中选择一项及以上。
- 为什么要看源码,怎么看源码?可以参考此文章
- 自己实现相似的功能,有助于更深入地理解原理所在,在与已有源码比较的过程中,提升自己的开发水平。
- 常用依赖库的底层原理
- swiperefreshlayout/swiperefreshlayout - platform/frameworks/support - Git at Google https://android.googlesource.com/platform/frameworks/support/+/refs/heads/androidx-main/swiperefreshlayout/swiperefreshlayout/
- recyclerview - platform/frameworks/support - Git at Google https://android.googlesource.com/platform/frameworks/support/+/refs/heads/androidx-main/recyclerview
- bumptech/glide: An image loading and caching library for Android focused on smooth scrolling https://github.com/bumptech/glide
-
实现一个简单的SwipeRefreshLayout
- 支持下拉刷新动作
- 支持启用、禁用手势
- 支持各种状态回调
- 支持包裹在RecyclerView等的外部,与官方效果相似
-
实现一个简单的RecyclerView
- 实现类似Adapter的机制
- 支持ViewHolder缓存复用
- 支持或部分支持notify*系列接口
- 支持代码滚动到某一位置的接口
-
实现简单的Glide
- 支持网络图片加载
- 支持生命周期,即Glide.with()
- 支持一定的缓存机制
- 选择一项及以上完成。
- 不能抄袭源码。
- 必须使用Kotlin实现。