了解iOS中的KVO

时间:2011-01-27 06:18:41

标签: ios key-value-observing

关于“确保KVO合规”, 有些官方定义似乎很难理解

  

为了考虑   符合KVO标准的特定房产,   一个班级必须确保以下内容;

     
      
  1. 该类必须是键值编码   符合财产要求   确保KVC合规性中规定。

  2.   
  3. 该课程必须允许自动   观察员通知   财产或实施手册   物业的关键价值观察。

  4.   

谁能提供更具体的例子来说明这一点?谢谢

2 个答案:

答案 0 :(得分:8)

查看键值观察编程指南的Ensuring KVO Compliance自动与手动支持部分。遵从性基本上通过遵循方法和/或ivars的命名约定来实现。

根据我的经验,KVO倾向于“正常工作”,这很不错。

答案 1 :(得分:1)

当你使用@property标签到create getters/ setters时,魔术会自动连接到To-One关系,你只需要addObserver ...并实现observe ...方法来捕获更新。

真正的挑战是了解如何实现To-Many Key Value Compliance以使可变集或数组工作。 documentation here是关键,并且理解有两个部分......索引集合和无序集合。这真的帮助我理解,如果我的@property是一个NSMutableArray,你需要查看Indexed区域中的方法,如果你的@property是一个NSMutableSet,你需要查看无序文档。

即使您不打算使用它们,也需要实现必需的方法。