小松的技术博客

六和敬

若今生迷局深陷,射影含沙。便许你来世袖手天下,一幕繁华。 你可愿转身落座,掌间朱砂,共我温酒煮茶。

  1. QMUI 刘海屏适配方案

    自 iPhone x 出了个刘海屏后,Android 各大厂商就先后跟进。由于 Android 碎片化严重,各大厂商各自为政,导致 Android 刘海屏的适配可谓痛苦,而网上的适配文章基本上只是简单的对官方文档做了一次搬运,对于业务线的同学来说,太不好使用了,因而我们需要做一次封装,解决各种兼容问题,让业务线最小程度感知挖孔屏的存在。 QMUI 新版本就添加了 QMUINotchHelper 以及相关组件,这篇文章就是简要介绍 QMUI 的封装方案以及相关使用要点。 如果使用了 QMUI 的沉…

    Android开发 继续阅读
  2. 理解 FragmentManager 的 BackStack

    最近, QMUI 的 fragment 管理框架升级到了 0.1.0, 添加了一个新的接口 startFragmentAndDestroyCurrent, 可以方便的完成类似 startActivity 之后 finish 的效果,有兴趣的可以试试: implementation "com.qmuiteam:arch:0.1.0" 其源码在 QMUI,有兴趣的也可以去看看。 FragmentTransition#addToBackStack 的误用 之前也有人在 issue 中问道如何实现类…

    Android开发 继续阅读
  3. QMUILayout, 让 UI 开发更简单

    在 Android UI开发过程中,我们会觉得非常繁琐的事情是什么呢?分隔线、圆角、边框、阴影、点击态等,在以往的实践中,我们都是通过 drawable 去实现的,非常麻烦。以分隔线为例,如果左右都打通,那还能复用,但现在的设计师都喜欢左边或右边有一定的 inset,而 inset 的值并非一成不变的,这不经意间就使得项目添加了数不清的 drawable,因此目前大多数人都开始尝试不使用 drawble 去解决这些问题了,QMUI 也不例外。 QMUI 1.1.0 版本带来的新的组件套装 QMU…

    Android开发 继续阅读
  4. RecyclerView 折叠/展开功能的实现

    最近这一两个周都没有怎么更新 QMUI。因为我一直在搞忙于搞微信读书的讲书界面。沉醉于写 bug 和改 bug 之中。 微信读书的讲书界面与功能都比较复杂,这次我把其中的折叠、展开、loading 的功能单独拿出来,写了一个 Demo,分享给大家。 先说说这个 Demo 所具有的功能: section 展开/折叠,带动画效果 如果展开,往上滚动,当前 section 的 header 会附着在顶部 每个 section 都有上 loading 和 下 loading 数据结构 首先我们需…

    Android开发 继续阅读
  5. 谈谈 Android 的手势返回

    前言 手势返回对用户而言是一个很便捷的操作,苹果原生支持,而 Android 到如今都没有考虑过这件事,所以只能有 App 开发者自己来完成,不过这也给了开发者创造的空间。最近在繁忙的业务开发之余,将 QMUIDemo 中的 fragment 管理基础类提取出来作为一个新的库,然后添加了手势返回的功能,目前已经完成最初版本,有兴趣的可以试试,在 build.gragle 中引入: implementation "com.qmuiteam:arch:0.0.1" 然后使用 QMUIFragme…

    Android开发 继续阅读