年後打算換工做,閒時整理了一下runtime,順便把以前用到的歸檔解檔,整理了一下,代碼以下:git
標黃色爲調用的主要代碼atom
調用示例:spa
#import <Foundation/Foundation.h>.net
#warning -.使用第1步:遵照協議get
@interface Person : NSObject<NSCoding>it
//屬性io
@property (nonatomic,assign) int age;import
@property (nonatomic,copy) NSString *name;float
@property (nonatomic,assign) double height;im
@property (nonatomic,assign) float weight;
@end
#import "Person.h"
#import "NSObject+Coder.h"
#import "Coding.h"
@implementation Person
#warning -使用第2步: 添加忽略屬性
- (NSArray *)ignoredNames{
return @[@"_height",@"_weight"];//添加不歸檔解檔的屬性
// return nil;//若是要歸檔解檔所有屬性,註釋上一行,打開此代碼
}
#warning -使用第3步: 用宏
CodingImplementation
@end
分類及演示源代碼連接: https://git.oschina.net/biyu6/HZCCoding