在Swift中,你可以这样做:
protocol Archivable: class {
}
extension UserDefaults: Archivable { }
Objective-C中是否有等效的NSUserDefaults符合协议?
答案 0 :(得分:0)
是的,您可以在Objective-C
中完成@protocol Archivable
- (void)doSomething;
@end
@interface NSUserDefaults (Test)<Archivable>
@end
@implementation NSUserDefaults (Test)
- (void)doSomething {
NSLog(@"Do something");
}
@end
尝试使用
[NSUserDefaults.standardUserDefaults doSomething];
结果
做点什么
答案 1 :(得分:0)
是的,您可以创建一个新类别的NSUserDefaults,并在类别文件中确认您的协议并实现协议方法。