文章分类 -  ios之runtime runloop NSInvacation

摘要:class_copyPropertyList 返回的仅仅是对象类的属性( @property 申明的属性),而 class_copyIvarList 返回类的所有属性和变量(包括在 @interface 大括号中声明的变量),下面做个简单的测试。首先,定义一个 Man 类 : @interface 阅读全文
posted @ 2020-10-15 16:13 sundaysios 阅读(168) 评论(0) 推荐(0) 编辑
摘要:为什么要NSInvocation,NSInvocation比performSelector 调用方法,根据方法名可以传递三个参数 -(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{ // perfor 阅读全文
posted @ 2020-10-15 11:30 sundaysios 阅读(153) 评论(0) 推荐(0) 编辑
摘要:https://blog.csdn.net/baidu_25743639/article/details/51793764 今天在学习runtime的method_exchangeImplementations进行方法交换的时候,将class_getInstanceMethod方法误写成class_ 阅读全文
posted @ 2020-10-14 15:47 sundaysios 阅读(184) 评论(0) 推荐(0) 编辑
摘要:写这篇文章的起因: 从一个对象收到一个它无法响应的方法到崩溃之间发生了什么?这是J_Knight在最近在博客里面问到的一个问题。其实本质上是在问iOS的消息转发机制。类似的原理文章有很多,但大多数都是在单纯的讲原理,并没有讲解实际的用处。本文先对iOS的消息转发机制进行一个全面的原理讲解,并且在后面 阅读全文
posted @ 2020-08-31 18:39 sundaysios 阅读(118) 评论(0) 推荐(0) 编辑
摘要:http://www.itpub.net/2019/10/29/3869/ 引言:一个APP的启动与结束都是伴随着RunLoop循环往复的,不断的循环、不断的往复。当线程被杀掉、APP退出后被系统以占用内存为由杀掉,RunLoop就消失了。但平时开发中很少见到RunLoop,为何它如此神秘?本文跟大 阅读全文
posted @ 2020-06-18 22:33 sundaysios 阅读(228) 评论(0) 推荐(0) 编辑
摘要:https://www.cnblogs.com/weiming4219/p/7845609.html Runtime是什么?见名知意,其概念无非就是“因为 Objective-C 是一门动态语言,所以它需要一个运行时系统……这就是 Runtime 系统”云云。对博主这种菜鸟而言,Runtime 在实 阅读全文
posted @ 2020-06-18 18:28 sundaysios 阅读(138) 评论(0) 推荐(0) 编辑
摘要:https://www.jianshu.com/p/ec02c7cdf948 阅读全文
posted @ 2020-01-08 11:54 sundaysios 阅读(66) 评论(0) 推荐(0) 编辑
摘要:https://www.cnblogs.com/Rinpe/p/5620583.html 遇到一个问题,写了一个分类,但原先类的属性不够用。添加一个属性,调用的时候崩溃了,说是找不到getter、setter方法。查了下文档发现,OC的分类允许给分类添加属性,但不会自动生成getter、setter 阅读全文
posted @ 2019-01-10 15:09 sundaysios 阅读(816) 评论(0) 推荐(0) 编辑
摘要:一、变量声明 为便于下文讨论,提前创建父类Biology以及子类Person: Biology: @interface Biology : NSObject { NSInteger *_hairCountInBiology; } @property (nonatomic, copy) NSStrin 阅读全文
posted @ 2018-09-03 22:32 sundaysios 阅读(115) 评论(0) 推荐(0) 编辑
摘要:class_copyPropertyList返回的仅仅是对象类的属性(@property申明的属性),而class_copyIvarList返回类的所有属性和变量(包括在@interface大括号中声明的变量),下面做个简单的测试。首先,定义一个WFrequencyManager类 然后在测试类中写 阅读全文
posted @ 2018-05-19 10:13 sundaysios 阅读(426) 评论(0) 推荐(0) 编辑
摘要:一、_cmd _cmd表示当前方法的selector的一个指针,self表示指向当前对象的一个指针 例如: 比如,我们要打印当前要调用的方法,可以这样来写: - (void)viewDidLoad{ [super viewDidLoad]; NSLog(@"Current method: %@ %@ 阅读全文
posted @ 2018-04-26 22:31 sundaysios 阅读(324) 评论(0) 推荐(0) 编辑
摘要:Method Swizzle 是 Objc Runtime 提供的几个黑科技之一, 它能够让我们在运行时替换已有方法来实现我们的一些需求。 但它在使用中也有一些需要注意的地方, 咱们来聊聊。 Method Swizzle 黑科技 相信有一些开发经验的同学,都用到过 Objc Runtime 的 Me 阅读全文
posted @ 2018-03-29 23:20 sundaysios 阅读(770) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示