Category的本质是一个Category_t 的结构体 分类的加载流程 _objc_initobjc 的入口,进行了一些初始化操作,注册了镜像状态改变时的回调函数 map...
![240](https://upload.jianshu.io/users/upload_avatars/11095150/e4668ace-a928-4580-aedb-a23d19666c56.png?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
Category的本质是一个Category_t 的结构体 分类的加载流程 _objc_initobjc 的入口,进行了一些初始化操作,注册了镜像状态改变时的回调函数 map...
一. 实现原理 动态生成子类 : NSKVONotifying_xxx1.1 中间生成的是一个动态类,但是修改的是 原对象的isa观察的是 setter动态子类重写了很多方...
iOS 与js交互方法 拦截Url通过WKScriptMessageHandler协议三方框架WebViewJavascriptBridge[https://gitcode....
1. nil、NIL、NULL、NSNULL有什么区别? nil、NIL 可以说是等价的,都代表内存中一块空地址。nil和Nil在使用上是没有严格限定的,也就是说凡事使用ni...
iOS中的事件的产生和传递 1. 事件的产生 发生触摸事件后,系统会将该事件加入到一个由UIApplication管理的事件队列中,为什么是队列而不是栈?因为队列的特点是FI...
iOS 内存管理 iOS 内存管理的理解?[https://github.com/liberalisman/iOS-InterviewQuestion-collection/...
1. UIView 和 CALayer 是什么关系? UIView:用户交互、界面展示。真正绘制的界面的类是Layer。CALayer属于QuartzCore框架(跨平台的)...
执行完pod install之后,控制台抛出以下警告信息: [!] The use of implicit sources has been deprecated. To c...
「简书」作为一款「写作软件」在诞生之初就支持了 Markdown,Markdown 是一种「电子邮件」风格的「标记语言」,我们强烈推荐所有写作者学习和掌握该语言。为什么?可以...
Session 416 由三位苹果软件工程师 Kyle Howarth, James Snee, Kris Markel 为我们带来 iOS 内存相关的一些内容 在 Memo...
组件化开发系列:(一)iOS组件化开发架构设计思考(二)iOS组件化开发实施一期文档 前言 我们在谈模块化、组件化,中心路由,响应式编程,三层、四层架构,依赖注入等概念...
我每天使用 Git ,但是很多命令记不住。 一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。 下面是我整理的常用 Git 命令清...