Cocoa开发中的高级特性与文件处理
一、键值观察(KVO)
- KVO的用途
- 响应后台进程计算结果 :应用程序可以监控属性,自动捕获更新,而无需使用委托方法或显式方法调用。
- 监控应用偏好设置 :应用程序可以跟踪用户在单独偏好设置面板上所做的更新。
- 复制值 :KVO使得实现类似电子表格的相互依赖关系变得更加容易。
- KVO的局限性
- 并非所有对象都支持KVO,某些对象可能仅部分支持。例如,可变数据收集对象,在创建、分配或复制数组时会触发KVO,但修改数组内容时不会触发。
- 解决方法:在修改数组后进行虚拟赋值,如
self.theArray = theArray;。
- KVO与空值
- KVO可能返回空值,为了保证健壮性,可以使用
[NSNull null]进行测试。示例代码如下:
- KVO可能返回空值,为了保证健壮性,可以使用
if((newValue[change valueForKey: @"new"]) != [NSNull null]) {…
超级会员免费看
订阅专栏 解锁全文
36

被折叠的 条评论
为什么被折叠?



