LDCopying
LDCopying 是NSObject的一个分类。它提供对象的无限层级深度复制,包括自定义对象和集合对象。
安装
LDCopying 通过CocoaPods提供。要安装它,只需将以下行添加到您的Podfile中:
pod 'LDCopying'
用法
导入头文件。
#import <NSObject+LDCopying.h>
使用 LDDeepCopy
代替 copy
或 mutableCopy
。
[obj LDDeepCopy]
obj 必须遵守键值编码规范。
如果要为类自定义复制过程,可以覆盖该类的 LDDeepCopy
方法。例如:
@implementation Car
- (id)LDDeepCopy {
Car *car = [[Car alloc]init];
car.name = [self.name stringByAppendingString:@"_Copy"];
return car;
}
@end