简单介绍 IGListKit是Instagram推出的新的UICollectionView框架,使用数据驱动,旨在创造一个更快更灵活的列表控件。github地址:https:...
简单介绍 IGListKit是Instagram推出的新的UICollectionView框架,使用数据驱动,旨在创造一个更快更灵活的列表控件。github地址:https:...
先贴一张渲染管线的图,然后我们再开始:图片出处链接 1:图片中,渲染管线大致被分为6个步骤,其中有3个步骤是蓝色背景。这3个蓝色背景的步骤,就是可编程渲染管线中用户可以自定义...
移动端项目复杂到一定程度都会走上组件化的道路,组件一多就会出现联编缓慢的问题。Android项目可以通过gradle,依赖源码生成jar包,提高编译速度。对于Objectiv...
一、进程间通信的概念 每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据...
前言 看了下上篇博客的发表时间到这篇博客,竟然过了11个月,罪过,罪过。这一年时间也是够折腾的,年初离职跳槽到鹅厂,单独负责一个社区项目,忙的天昏地暗,忙的差不多了,转眼就到...
参考HTTPS的加密流程|一篇文章读懂HTTPS及其背后的加密原理|HTTPS协议详解|Https加密过程|Https握手过程 HTTPS(全称: Hypertext Tra...
KVC(Key-value coding)键值编码,单看这个名字可能不太好理解。其实翻译一下就很简单了,就是指iOS的开发中,可以允许开发者通过Key名直接访问对象的属性,或...
Runtime的特性主要是消息(方法)传递,如果消息(方法)在对象中找不到,就进行转发,具体怎么实现的呢。我们从下面几个方面探寻Runtime的实现机制。 Runtime介绍...
怎么检测项目中的Data race? 下面就进入正题简单聊一聊iOS中的锁,以及相关的内容(由于本人能力有限,文中难免有一些遗漏或者错误,请各位看官不吝赐教!谢谢!🙏) 简单...
之前每个版本的ipa包打出来都才20M出头,后来不知道从哪个版本起打的包每次都将近40M,但是工程中也没有明显的增加很大第三方类或者图片、静态文件。于是就开始了各种瘦身计划:...
最近项目需要存储用户的唯一标识符,但是由于如果用户重装APP,获取到的又会是一个新的UDID。查询了一系列资料下来,可以用Keychain进行存储UDID,然后就算重装了AP...
从 iOS 9 开始,即使不移除观察者对象,程序也不会出现异常。 对于addObserver:要分ViewController和普通NSObject两个说起 ViewCont...
文档描述: /* Defines how the timed object behaves outside its active duration.Local time ma...
最近看了许多iPhone X适配的文章,发现很少有介绍safeArea的,就来随便写写 现在对于iPhone X的适配,有一种常见的做法是给导航栏或tabbar增加一个固定的...
最近很多同学问我,swift语言中,??是怎么回事。因为在微信交流中,问题不能被清晰表述,所以我很奇怪对于这么简单的一个运算符,会有这么多同学有疑问。后来随着对问题理解的深入...
前言 最近项目需求加上状态恢复, 记得之前在书上看过, 这次单独抽出这个功能实现详细梳理一下, 方便自己温习一下, 也方便不知道的 developer 学习. 状态恢复? 举...