0

我想在 iVar 的值发生变化时收到通知。假设我们在不调用 setter 的情况下更改字符串的值,那么我将如何在同一个班级中了解。因为 KVO 和覆盖 setter 仅适用于调用 setter。没有 iVar。

4

1 回答 1

1

当您直接更改 ivar 的值时,无法自动收到通知。如果您想在值更改时收到通知,那么通过将 ivar 设为私有来直接在类外部更改值是不可能的,并且在类内部,强迫自己永远不要直接更改它,除非在 setter 或 with KVC 调用 ( setValue:forKey:)。

于 2013-11-05T09:46:49.640 回答