Android优雅的添加监听器

日常开发过程中大部分情况都会添加各种监听、回调,诸如:addListener(xx)addCallback(xx)之类,当然会成对的伴随着removeListener(xx)removeCallback(xx)出现,万一一不小心只调用了add忘记了remove,因为引用得不到释放,很有可能会出现内存泄露的问题。那有没有比较优雅的解决方法,能自动的调用remove呢?

继续阅读Android优雅的添加监听器

MagicIndicator原理浅析

MagicIndicator库相信大家都用过,尤其是做移动端应用,各种酷炫的导航条大都使用这个库来开发。该库从2016年发布到现在一晃10年过去了,依稀记得当初用这个库的时候就想着有一天好好分析下源码,奈何因为自己当时年少无知以及各种拖延,导致有始无终。这两天下载了源码看了下,准备写一篇文章记录下,也算是了却10年前的心愿。

继续阅读MagicIndicator原理浅析

自定义LayoutManager注意事项(三):自定义LayoutManager实战

通过前面两篇:《深入理解RecyclerView与LayoutManager(一):基本概念与原理》、《深入理解RecyclerView与LayoutManager(二):自定义LayoutManager注意事项》的学习,相信大家对RecyclerView以及LayoutManager都有了更深的认识。本篇将一步步的带着大家来实现一个案例效果,具体效果看这里

继续阅读自定义LayoutManager注意事项(三):自定义LayoutManager实战

深入理解RecyclerView与LayoutManager(二):自定义LayoutManager注意事项

上一篇主要介绍了RecyclerView的整体流程,最后也介绍了LayoutManager的作用——LayoutManager的工作实际上是帮助RecyclerView决定子View的位置。在正式实践之前,还得先梳理下自定义LayoutManager的流程以及一些需要注意的事项。

继续阅读深入理解RecyclerView与LayoutManager(二):自定义LayoutManager注意事项

深入理解RecyclerView与LayoutManager(一):基本概念与原理

距离最近一篇博客已经过去了半年多了,再不写点啥今年定的产出5篇博客的计划可就要完不成了。纠结了很久又不知道写什么,留下了没有技术的泪水…。思来想去还是写点大家常用但是可能又理解不深,又想深入了解它的技术,没错,就RecyclerView了。

继续阅读深入理解RecyclerView与LayoutManager(一):基本概念与原理