我想在NSUserDefaults中保存我的MKPolyline和MKPolygon视图。我有,我已经实现了一个模型:无法使用NSCoding编码MKPolyline或MKPolygon
-(id)initWithCoder:(NSCoder *)aDecoder
- (void)encodeWithCoder:(NSCoder *)aCoder
然而,每当我试图编码我MKPolyLine我得到一个错误:
-[MKPolyline encodeWithCoder:]: unrecognized selector sent to instance
我设置了所有异常断点并停止在该行:
[aCoder encodeObject:self.layerData forKey:@"layer"];
为layerData的属性是:
@property (strong, nonatomic) MKPolyline *layerData;
个
为什么这可能发生的任何想法?
为了将'initWithCoder:/ encodeWithCoder:'保存到'NSUserDefaults'中(即将其转换为NSData),您需要遵循NSCoding类。那么,MKPolyline不符合NSCoding。你可以做什么,而不是,是保存点或坐标(论文应该很容易保存),并从他们重建了MKPolyline。 – Larme