如何加载&将自定义对象保存到iOS和OSX?

时间:2014-04-10 00:53:39

标签: ios objective-c macos cocoa

我有一个自定义对象,可以在iOS应用和OSX应用中使用。它看起来像这样:

@interface Preset : NSObject

#if TARGET_OS_IPHONE
@property (nonatomic, strong) UIImage *thumbnail;
@property (nonatomic, strong) UIImage *customThumbnail;
#else
@property (nonatomic, strong) NSImage *thumbnail;
@property (nonatomic, strong) NSImage *customThumbnail;
#endif

@property (nonatomic, strong) NSDictionary *parms;
@property (nonatomic, strong) NSString *name;
@end

我希望无论我在哪里创建它,都可以在iOS和OSX中加载和保存对象。

我打算实现简单加载和保存的NSCoding方法,但后来我发现我无法在OSX上创建Preset文件并在iOS中使用它因为NSImage之间的差异和UIImage。

我确定这是一种简单的方法,但我不会看到它。

任何?

谢谢!

1 个答案:

答案 0 :(得分:4)

UIImageNSImage转换为包含图片PNG表示的NSData。然后在NSData设置中使用NSCoding