首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
sy007
掘友等级
Android工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
175
文章 171
沸点 4
赞
175
返回
|
搜索文章
最新
热门
Android点击事件防抖设计与实现
点击事件抖动是每个项目都会遇到的体验问题, 如何省时省心的处理是我们每一位开发者要思考的问题。这篇文章我将带你从原理到实践来完成一个功能完善的点击事件防抖插件
Glide源码分析
本篇文章基于Glide4.11.0源码进行分析,主要是从宏观上分析Glide加载一张图片的完整流程,本篇的风格尽量减少大量源码的粘贴,对于比较重要的源码能用伪代码展示尽量使用伪代码展示,否则对待分析的代码片段进行详细的注释,不太重要的部分或者笔者觉得大家都能耳熟能详的源码会通过…
OKHttp源码分析
http是客户端与服务端进行通讯的一种协议,它属于tcp/ip协议族中的应用层。 301 表示永久性重定向,如果把资源对应的URI保存为书签则会更新书签的URI。比如输入的URI支持https,当输入http时,会返回301。Location指明URI变为https开头 302…
关于Fragment的一些琐事
本篇主要记录Fragment源码分析以及一些容易忽视的问题。基于api28,androidx.fragment:fragment:1.0.0。 都知道Fragment的add,replace,hide,show以及最后的commit离不开FragmentTransaction。…
RecyclerView回收复用机制总结
该层缓存目的是为了当调用notifyItemChanged(pos),notifyItemRangeChanged(pos,count)后该位置信息发生改变的缓存,一般用于change动画,注意mChangedScrap并不是说存储改变的位置并直接复用,而是在预布局时存储改变的…
OKio源码分析
ByteString 是不可变的字节序列。对于字符数据,最基本的就是String。而ByteString就像是String的兄弟一般,它使得将二进制数据作为一个变量值变得容易。这个类很聪明:它知道如何将自己编码和解码为十六进制、base64和utf-8。 Segment Seg…
事件传递机制分析
本文是基于compileSdkVersion28,AppCompatActivity分析。 那我们看下setContentView()后如何创建DecorView并将布局添加到DecorView的一个id为@android:id/content的View中。 setConten…
自定义View的一些小Tip
有必要为你的child测量时支持margin。即调用 measureChildWithMargins()在测量子View时会减去ViewGroup的padding和子View的margin以及ViewGroup已使用的宽高。剩余的就是子View最大可用空间 measureChi…
Kotlin-内联函数
在Kotlin中如果使用inline修饰符标记的一个函数,被称为内联函数。在解释内联函数的作用之前,我们先来看下如果没有内联修饰符标记函数,在使用lambda带来的性能开销。举个接受函数类型的例子 也就是说在调用callAction时,编译器会额外生成一个Function0的实…
个人成就
文章被点赞
131
文章被阅读
27,777
掘力值
776
关注了
69
关注者
57
收藏集
2
关注标签
17
加入于
2017-02-07