gpt4 book ai didi

iOS - subview Controller 具有 "Strong"对父 View Controller 的引用

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:58:53 24 4
gpt4 key购买 nike

我已经阅读了很多关于保留周期的内容。必要时,父级 UIViewController 应该始终对其子级 UIViewController 有一个 strong 引用,而子级应该有一个 weak 对其父项的引用。

只有当他们互相引用时才会这样吗?例如,如果父级 UIViewController 没有对其子级的任何引用,那么子级能否拥有对其父级 UIViewControllerstrong 引用?我可以逃避这个问题吗,或者从长远来看,这种做法是否会导致内存问题?

最佳答案

来自 UIViewController.h

/*
If this view controller is a child of a containing view controller (e.g. a navigation controller or tab bar
controller,) this is the containing view controller. Note that as of 5.0 this no longer will return the
presenting view controller.
*/
weak public var parentViewController: UIViewController? { get }

// An array of children view controllers. This array does not include any presented view controllers.
@available(iOS 5.0, *)
public var childViewControllers: [UIViewController] { get }

在这里您可以看到,父子 ViewControllers 之间已经 strongweak 引用。您不应在从子级到父级的方向上添加任何更多新的strong 引用,因为这会导致内存泄漏。

关于iOS - subview Controller 具有 "Strong"对父 View Controller 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34467875/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com