菜鸟教程小白 发表于 2022-12-13 15:45:07

ios - 覆盖 viewSafeAreaInsetsDidChange 需要调用 super 吗?


                                            <p><p>如果我覆盖 <code>UIViewController</code> 的 func <code>viewSafeAreaInsetsDidChange</code> 是否需要调用 super?</p>

<pre><code>override func viewSafeAreaInsetsDidChange() {
    super.viewSafeAreaInsetsDidChange()
    // do my stuff
}
</code></pre>

<p>我知道,如果您重写 <code>func viewWillAppear(_ animated: Bool)</code> 并且您没有在内部调用 <code>super</code>,您的应用程序可能会出现异常行为。事实上,Apple 说你必须在某个时候调用 <code>super</code>。我想这里不是这样,这就是我想确认的!</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>这不是必需的,但通常被认为是对重写的方法调用 <code>super</code> 的最佳做法,除非有明确的理由不这样做。</p>

<p>如果您决定将来您的 ViewController 应该从自定义 <code>UIViewController</code> 子类继承,则无需进行任何代码更改即可在每个子类中运行父类(super class)的实现。</p ></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 覆盖 viewSafeAreaInsetsDidChange 需要调用 super 吗?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/46589230/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/46589230/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 覆盖 viewSafeAreaInsetsDidChange 需要调用 super 吗?