数据埋点与视图控件的反馈式定位
我们想要做一个插件,能够直接在界面上就能显示该页面和该事件的pv和uv(据说淘宝就有这种功能),那么就必须将埋点数据和控件进行一一对应。然而我们是行为埋点,很多东西并不会直接绑定控件,所以如果要做这种效果则必然需要对埋点架构进行重新设计,所以这里采用了一个小技巧,来实现大部分控件与埋点的绑定。
更多讨论Gif的一些问题
gif是我们平时非常常见的图片格式,同时也是一种非常古老的动画图片格式。在我们平时使用的过程中也会有相应的问题,这里我们来看看Gif所带来的一些问题以及解决方式。
更多浅析GPUImage的设计思想
在移动端图片处理时,往往因为大量的计算导致需要较长的时间,为了充分利用设备的潜能,所以产生了利用GPU来处理计算的方案。其中最有名的开源方案就是GPUImage。
更多被滥用的category
objc的最大一个特性就是动态性,利用动态特性,我们可以做很多事情,包括对已有的类和对象添加替换方面属性。但是这也给我们带来了一些隐藏的风险,以及让人很不愉快的一些体验。
更多自定义KVO的一些错误使用方式
很多时候我们讲KVO,使用的时候需要注意移除监听,循环引用等问题,但是在自定义KVO的时候,却容易忽视几个问题。
更多内存循环引用算法
平时我们最容易犯的一个错误就是循环引用,而且难以察觉,而FBRetainCycleDetector则是专门在运行期来检查循环引用,那我们来看看他是怎么做到的。
更多操作符重载和隐式转换的思考
从刚开始工作的时候,就有很多人批判C++的操作符重载和隐式转换,我也是一直坚持显式调用的,但是最近看了一些C++相关的库后,发现其实这两者并没有那么的恐怖,反而在某些方面是一颗近乎完美的银弹!
更多navigation-bar的黑魔法
平时我们在处理页面跳转的时候有一个非常难受的情景,就是当两个页面的导航栏背景色不一致的时候,系统不能很好的处理这两者间的交互动画,这就导致整个导航栏的背景转换非常的生硬,那么这里就来看看现在的一些主流的处理方式。
更多数据存储的一些思考
上篇主要讲述了我们在平时iOS开发中常见的一些缓存及其区别,虽然这已经满足了绝大多数的场景,但是当我们遇到特殊场景的时候,又该如何呢。
更多选择你所需要的缓存
我们在处理数据的时候,第一步就会接触到缓存。这里就来看看应该选择什么样的缓存来解决你的问题。
更多