我一直在阅读关于Nano Store in Motion的内容,似乎我无法在其数据库中存储图像。我已经阅读了很多在NSDictionary中存储图像,然后将其存储在Nano中。这是否有效,如果是这样,你如何在NSDictionary函数中存储图像。
答案 0 :(得分:0)
这可能是有益的:
How can I store a UIImage in an NSDictionary?
RubyMotion-源化:
dict = NSMutableDictionary.dictionaryWithCapacity(1)
img = UIImage.imageNamed("whatever")
dict["some_key"] = img
extracted_image = dict["some_key"]
答案 1 :(得分:0)
您需要使用“可序列化”值:
来自https://github.com/tciuro/NanoStore 的
字典必须是可序列化的,这意味着只允许以下数据类型:
- 的NSArray
- 的NSDictionary
- 的NSString
- NSData(*)
- 的NSDate
- 的NSNumber
因此,在您的情况下,您可以创建PNG数据表示:
data = UIImagePNGRepresentation(image)
如果需要,您可以将这些数据存储在Hash中,但在使用之前,您需要将其转换回UIImage。
image = UIImage.imageWithData(self, scale:UIScreen.mainScreen.scale)