如何删除添加有observe()API的KVO观察器?

问题描述 投票:0回答:1

我读到NSObject.observe<Value>()是用于注册KVO观察者的新API(在Swift 4中引入),它支持Swift关键路径表达式和闭包。我想知道新API中注销观察者的方法是什么?

observe<Value>()方法返回一个NSKeyValueObservation对象,该对象没有显式取消观察的方法(根据其代码,当该对象由ARC释放时,它会隐式执行此操作)。因此,似乎唯一的方法是使用使用旧键路径String参数的旧NSObject.removeObserver()吗?

我也发现很难找到此observe() API的文档。 NSObject文档中没有提及它(该文档包含NSObject的描述,但没有此observeValue()的描述),并且XCode中的代码完成功能对此不起作用。我发现苹果官方文档中唯一提到它的地方是本文observe<Value>。那使我思考这是不完整的还是正在进行的工作? (但是鉴于它是在Swift 4时间框架中引入的,我对此表示怀疑)。

ios swift key-value-observing
1个回答
0
投票

<< [示例

© www.soinside.com 2019 - 2024. All rights reserved.