【问题标题】:Store custom objects in UILocalNotification's userInfo without encoding将自定义对象存储在 UILocalNotification 的 userInfo 中,无需编码
【发布时间】:2016-03-05 16:29:29
【问题描述】:

我有一个名为Person 的自定义类,我想将它存储在UILocalNotificationuserInfo (NSDictionary) 中。

有什么方法可以在不使用 -encodeWithCoder: 将其转换为 NSData object 的情况下保存它?

【问题讨论】:

  • 对象必须被放入可序列化的格式。 NSData 可能是正确的选择。您在转换为 NSData 时遇到问题吗?考虑解决这个问题而不是避免它。如果那是问题,请在此处发布问题。

标签: ios cocoa-touch uilocalnotification property-list


【解决方案1】:

一个简单的解决方法是给每个人一个唯一的 id 并将 id 存储在 userInfo 中。 保存 person 实例并在需要获取 userInfo 时使用 id 获取它

【讨论】:

    【解决方案2】:

    userInfo 字典暴露了一些限制here

    所以我认为,您需要序列化 ​​Person 对象才能将其存储在该位置。

    【讨论】:

    • 此人在NSArray 中,如果这很重要的话
    • 对象的存储在这里无关紧要,因为可可框架需要探索字典中存储对象的所有树。
    猜你喜欢
    • 1970-01-01
    • 2017-08-30
    • 2011-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-09
    • 1970-01-01
    相关资源
    最近更新 更多