菜鸟教程小白 发表于 2022-12-12 16:15:18

iOS 9 : KVO no longer working


                                            <p><p>我在 UITextView 上有一个观察者来检测它的内容大小是否在变化:</p>

<p><code>;</code></p>

<p>这段代码总是可以调用以下函数,我在其中调整 UITextView 的大小:</p>

<p><code>- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context</code></p>

<p>然而,在 iOS 9 中,这个函数永远不会被调用。 iOS 9 发生了什么变化,我该如何解决? </p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>如果您搜索 UIKit 和 KVO 合规性,您会发现每个人都说您不能依赖它。见 <a href="https://stackoverflow.com/questions/6612523/ios-how-do-i-know-if-a-property-is-kvo-compliant" rel="noreferrer noopener nofollow">this question</a>和 <a href="https://stackoverflow.com/questions/6114261/how-reliable-is-kvo-with-uikit" rel="noreferrer noopener nofollow">this question</a> . </p>

<p>我不知道发生了什么变化,但我认为你应该只继承 UITextView 并重载 setContentSize: 如果你想知道它什么时候发生变化。</p></p>
                                   
                                                <p style="font-size: 20px;">关于iOS 9 : KVO no longer working,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/32511864/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/32511864/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: iOS 9 : KVO no longer working