![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
kotlin
文章平均质量分 91
古嘉明同学
不务正业的研究生,会安卓的程序员
展开
-
QQ主页抽屉效果实现,有趣的弹簧动效
最近在测试机玩QQ的时候,留意到QQ主页上抽屉的动画效果,觉得挺有意思,今天就来实现以下QQ主页的抽屉动效。抽屉打开的时候,可以看到主页是有两个动作:主界面收缩主界面四周圆角度数变大接下来就一步步实现QQ抽屉打开时的效果。原创 2022-01-21 10:50:36 · 3177 阅读 · 2 评论 -
Kotlin 静态内部类单例模式的正确实现方式
本篇是对现网上流传的 Kotlin 实现静态内部类单例模式的纠正,为了把原理说清楚,文章前奏可能会有些长,熟悉静态内部类单例模式原理的朋友,可以直接跳转到文章最后,直接看结果即可。最近在整理基础库的时候,需要一个基础类来存储初始化的数据,例如应用的 Application Context,用户的登录 token 等等信息,这些基本都是应用全局类的信息,在应用的整个生命周期都会用到,因此我将这个基础类设计为单例模式来优化性能。我知道的单例模式就有6钟,饿汉式、懒汉式、线程安全的懒汉式,volatile.原创 2022-01-14 18:08:50 · 5296 阅读 · 1 评论 -
设置页布局神器!有了它,开发设置页简直是享受
背景故事最近写到一个设置页的需求,里面加起来有十多项设置,每一项设置都有相应的业务逻辑。刚开始,我说成,设置页嘛,简单,新建个布局文件,编写一个个layout,后来发现有很多设置项布局是一样的,可以直接复制之前的,但复制多几遍后,我感觉不对劲,这些View都是一样的,我感觉一直在写重复的代码。不止如此,在代码进行数据初始化时,还需要给每个设置项定义id,然后通过id获取到各个不同的设置项,再进行相应的赋值操作。比如,我们要为每个设置项定义点击事件:如果只是定义点击事件还好,如果还涉及设置项的显示和原创 2021-08-06 00:35:46 · 154 阅读 · 0 评论 -
高端操作!实现RecyclerView的上下拖拽
写在前面最近工作强度好大,一天能敲10小时以上的代码,敲的我头疼。代码写多了,突然想起来,好像真的很久没发技术文了,原因有很多,就不说了。。都是借口,今天分享内容也是工作时遇上的一个小需求,觉得挺有意思,那就写篇文章吧! 需求描述大概是这样,一个页面有一个列表,列表里有很多item,需要支持用户拖拽其中item到不同的位置,来对列表项进行重新排序。要实现的效果大概如下:除去与业务相关的部分,我们只需关注如何让列表item支持上下拖拽就行,这也是这个需求的关键。我们组安卓岗在半年前已经全部用k原创 2021-07-01 15:42:56 · 2340 阅读 · 0 评论