Mak*_*tar 5 iphone cocoa serialization cocoa-touch addressbook
我是iPhone开发的新手,你能建议我如何序列化AdressBook记录吗?
我已经阅读了stackoverflow - 如何在iPhone sdk中序列化一个简单的对象,但我仍有疑问:我应该扩展ABRecordRef吗?可能吗?或者我应该实现自己的类NSObject?
(类似的问题是在Mac论坛上,没有回答)
谢谢!
ton*_*lon 12
ABRecord是一种不透明的C类型.它不是Objective-C意义上的对象.这意味着您无法扩展它,您无法在其上添加类别,您无法发送消息.您唯一能做的就是使用ABRecord作为参数调用ABRecord Reference中描述的函数.
您可以做两件事来保持ABRecord arround引用的信息:
获取ABRecords id ABRecordGetRecordID().ABRecordID定义为int32_t,因此您可以将其强制转换为NSInteger并将其存储在任何您喜欢的位置.您可以稍后从ABAddressBookGetPersonWithRecordID ()或获取记录ABAddressBookGetGroupWithRecordID().但是请注意,同时用户或其他应用程序可能会更改甚至删除记录.
将记录中的所有值复制到标准NSObject子类,并使用NSCoding或其他技术来存储它.然后,您将无法从用户可能进行的记录更改或添加中获益.
因为你可以结合两种方法.
| 归档时间: |
|
| 查看次数: |
1986 次 |
| 最近记录: |