iOS 9:KVO不再有效

时间:2015-09-10 21:26:32

标签: ios objective-c key-value-observing ios9

我在UITextView上有一个观察者来检测其内容大小是否在变化:

[_textView addObserver:self forKeyPath:@"contentSize" options:NSKeyValueObservingOptionNew context:NULL];

此代码始终用于调用以下函数,我在其中调整UITextView的大小:

- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context

但是,在iOS 9中,永远不会调用此函数。在iOS 9中有什么变化,我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

如果你搜索UIKit和KVO合规性,你会发现每个人都说你不能依赖它。请参阅this questionthis question

我不知道发生了什么变化,但我认为你应该只是继承UITextView并重载setContentSize:如果你想知道它何时发生变化。