iOS中分类(category)的使用

iOS中分类(category)的使用,第1张

(1)Cmd+N,iOS-->Objective-C File,Next;

(2)File Type选择category,class选择需要的类,分类名,Next。

这是给UIView的frame写的一个分类

上面对于UIView写的分类,添加了成员变量,而且扩展了UIView类的方法

参考文档: http://www.cocoachina.com/ios/20161018/17784.html

这里总结了一些经常用的分类 https://github.com/Mexiang/category ,都是简单经常用的方法,会持续总结更新github。

类扩展可以增加属性和成员变量,一般写在.m里,所以一般为私有的

而分类可以写在.h 或者 .m 里写在.m就变成了私有的方法

分类优先级比原类的优先级较高,如果重写将覆盖原类的方法

如果非要添加属性和成员变量,可以使用runtime来添加 ,必须自己实现set 和 get方法

为类添加额外的方法,

(1) 不一定要在@implementation中实现,但是找不到实现会报错

(2) Category理论上不能添加变量,但是可以使用@dynamic 来弥补这种不足。 (即运行时Runtime)  并手动实现 set get方法

.h

.m

不实现,运行会报错

不实现,直接警告 ,必须在@implementation中实现,

类扩展像是没有命名的类别

定义的变量可以声明在.m里,私有的,也可以声明在.h里就是共有的

方法要在.m里实现


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11914031.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存