我有一个objective-C协议
@protocol Parcelable <NSObject>
@required
- (instancetype)initWithData:(NSDictionary *)data;
@end我似乎找不到在Swift类中实现的方法。我试过了
required init(data: NSDictionary) {
super.init()
... //do something with data
}甚至
func initWithData(data: NSDictionary) -> Self {
... //do something with data
}但是它一直说这个类不符合协议'Parcelable‘
有什么想法吗?
发布于 2016-09-14 08:37:43
啊哈!实现此协议的正确方法是
required init(data: [NSObject : AnyObject]) {
super.init()
... //do something with data
}Swift将NSDictionary转换为[NSObject : AnyObject],并且不识别NSDictionary本身(?)
https://stackoverflow.com/questions/39480844
复制相似问题