• 快速实现 iOS 全局黑白主题

    近期很多 app 都使用了黑白主题悼念领导人离世. 缅怀的同时, 作为技术人我实现的技术方案也很感兴趣, 网上搜索了下, 目前无外乎有如下方案:

    1. 统一根据后台接口返回信息对 UIImage UIColor 做统一处理
    2. 在 window 上加一层黑白滤镜, 该 window 上面的所有 UI 元素都会被应用次滤镜
  • Apple 证书校验实践

    证书管理是 Apple 开发从业人员绕不过去的一个话题, 很多极有经验的老鸟也会此栽跟头.

    前两天我司在证书迭代的过程中就被证书校验坑了一天, 经过与资深 iOS 开发工程师 铁柱 & 言若 的不断踩坑, 不断分析, 最终对证书验证的理解又上了一个层次, 这篇文章把踩坑过程中的一些点记录下来, 以示后人.

  • UIScrollView 的相关滑动代理回调方法及属性在滑动时的变化

    如题, 虽然用了很多很多次 UIScrollView, 知道它有一些滑动代理回调方法, 知道它有一些滑动状态相关的属性, 但对这些方法在每一个时间点的具体状态总是不太确定, 看官方说明文档也是一头雾水. 索性这次将所有的代理方法及属性调用一遍, 然后记录下结果.

    对于这种涉及到状态变化的描述, 文字似乎有些苍白无力, 于是我尝试用图表的方式来进行记录, 以期更加直观.

  • iOS 之控件约束

    iOS 的布局方式有

    • 绝对布局
    • 约束方式进行 autoLayout 布局

    在这两种布局基础上, 我们可以使用

    • stroryboard / xib 布局

      更加直观, 缺点则一大堆, 比如 view 稍多的情况下打开 storyboard 界面都会非常卡顿, 团队合作经常发生冲突需要进行协调.

    • 纯代码进行布局.

      适合团队, 条理清晰, (可能) 约束计算速度更快

    因此使用纯代码布局是一劳永逸的一种方法. 其实 storyboard / xib 布局的原理和思想都是相同的, 无非就是对上下左右, 宽高进行约束, 当一个控件的约束足够时 则约束完成.

    本文所有的讨论都基于纯代码布局, 以及代码布局库 SnapKit.