繁体   English   中英

如何在NSUserDefaults中使用块变量存储自定义对象

[英]How to store custom objects with blocks variable in NSUserDefaults

我想在NSUserDefaults中使用块存储自定义对象。 我已经实施了

- (void)encodeWithCoder:(NSCoder *)encoder and - (id)initWithCoder:(NSCoder *)decoder

有没有办法在此调用期间存储myblock变量? 像这样的东西:

- (void)encodeWithCoder:(NSCoder *)encoder
{
    [encoder encodeSomething:self->_myblock forKey:@"myblock"];
}

我已经尝试过encodingObjectf,它似乎无法正常工作...如果有人已经尝试过了,我可能会感谢您的帮助:-)

艾伦达

似乎不可能直接进行。 您可以间接地执行此操作,这里建议一个很好的解决方案: 有什么方法可以序列化/反序列化Objective-C块吗?

我认为对数据进行编码而不是对数据块进行编码更好。 创建一些自定义类并对数据进行搜索,在运行时,您始终可以使用该数据创建块。 AFAIK块不会向NSCoding确认(如果我在这里错了,请纠正我)。

-曼

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM