iOS 6 中的 viewDidLoad 调用过一次吗?

2023-11-21

小心:这个问题与最近的弃用viewDidUnload。我见过“很棒”且合乎逻辑的答案围绕这个主题,但显然事实证明他们错了。请谨慎行事,正如您所看到的,这个主题非常令人困惑。

来自苹果的文档:

然而系统会自动释放这些昂贵的资源 当视图未附加到窗口时。剩余内存 大多数视图使用的数据都足够小,因此不值得 系统自动清除并重新创建视图层次结构。

所以...我可以安全地假设在 iOS 6 中,只要我不显式地将 viewController 的视图设置为 nil(手动卸载它),viewDidLoad在应用程序的整个生命周期中,任何分配的 viewController 实例只会被调用一次?


从 iOS 6 开始,您的UIViewController子类只会收到viewDidLoad一次,除非你编写代码来设置它view回到nil.

但是,我不会依赖复杂系统提供的视图控制器中的这种行为,例如UIImagePickerController。也许它自己设定view回到零。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS 6 中的 viewDidLoad 调用过一次吗? 的相关文章

随机推荐

  • Android 主题中的 textAllCaps

    我有一个主题 希望所有活动的文本视图都大写 所以我在样式中设置 textAllCaps 然后将其应用到我的主题中的 textViewStyle 如下所示
  • 使用 Jquery 鼠标悬停时放大图像?

    我试图在鼠标悬停时放大图像 并在鼠标移开后将尺寸缩小到正常大小 我有以下内容 image img live mouseover function var this this this attr width 25 this attr heig
  • 如何使用JPA本机查询选择多个具有相同名称的列?

    我在通过 JPA 使用 sql 本机查询选择一些数据时遇到了一些麻烦 那是因为我有 3 个具有相同名称的列 descricao 当我通过执行选择操作时创建本地查询的方法实体管理器接口找到的第一列值将覆盖其他列值 例如 当我在对象数组中得到这
  • java 方法调用的成本有多高

    我是一个初学者 我总是读到重复代码是不好的 然而 似乎为了不这样做 您通常必须进行额外的方法调用 假设我有以下课程 public class BinarySearchTree
  • 菜单上没有添加控制器,也无法在 MVC 4.5 中添加视图

    我刚刚下载了新的 nopCommerce 3 2 MVC 4 应用程序 当我在 Visual Studio 中打开解决方案时 我无法添加控制器 添加 菜单中没有 控制器 选项 当我在控制器内部右键单击时 也没有 添加视图 它似乎将解决方案中
  • 在映射数组时如何为 React 子项指定键

    我在反应联系人列表组件中有一个方法 我在其中返回另一个组件 我已经让它工作了 但我很好奇是否有更好的方法来构建我如何使用密钥 具体来说 我从下面的方法中询问这行代码 数据被硬编码为示例以开始 return
  • 在 iOS 下检索电影编解码器?

    我正在尝试找到用于压缩电影的编解码器 我确定我是否需要以某种方式使用 CMFormatDescription 并获取 CMVideoCodecType 密钥 我不知道如何通过元数据数组 关于如何检索编解码器有什么想法吗 AVURLAsset
  • 并行。未利用所有核心

    我正在使用进行繁重的数学计算Math Net Numerics内部平行Parallel For block 当我在具有 4 个核心 2 2 的本地系统中运行代码时 它使用了全部 4 个核心 但是 当我在具有 8 个核心 4 2 的开发服务器
  • Firebase 按日期过滤

    My data 我正在寻找一种使用自定义日期范围来过滤日期的方法 我在网上看到了一些他们查询日期的例子 但时间戳始终是关键 这在我的情况下是不可能的 我已经尝试过下面的代码 但它不起作用 var rootRef1 firebase data
  • Google Android - 如何确定 3g 和 2g 是否已打开

    我正在为 Google Android 开发一个简单的应用程序来打开和关闭 wifi 或 3g 或 2g I see http developer android com reference android net wifi WifiMan
  • 从命令行运行 Windows 上的 Python 3 安装

    只是好奇 是否有特殊原因导致 Python 3 x 没有安装在 Windows 上以使用命令行 python3 默认运行 就像在 Mac OSX 和 Linux 上一样 有某种方法可以配置Python 使其像这样运行吗 谢谢 编辑 只是补充
  • 使用命令行linux安装android sdk

    我想通过命令行下载android sdk 我从命令中得到了这个命令https stackoverflow com a 4569792 563306我下载了 Android SDK r18 tar 文件 提取它并在工具目录中 我尝试了这个命令
  • webpack 2:来自 UglifyJs 的 ./public/bundle.js 中出现错误 意外字符“`”

    我遇到了 2 个相关问题 第一 当我跑步时npm run build the bundle js文件没有缩小 但我确实得到了bundle js map file 第二 当我跑步时webpack d我只得到一个缩小版bundle js文件 并
  • CRC 和哈希方法(MD5、SHA1)的区别

    CRC和散列方法都可以用来验证原始数据的完整性 为什么现在大多数系统都使用哈希方法 CRC 旨在防止传输错误 而不是恶意操作 因此 它不耐碰撞 特别是 CRC 码的线性特性甚至允许攻击者以保持校验值不变的方式修改消息
  • 如何使用 Android 7.1 应用程序的 ShortcutManager API 创建动态应用程序快捷方式?

    在 Android 7 1 中 开发者可以创建应用程序快捷方式 我们可以通过两种方式创建快捷方式 使用资源 XML 文件的静态快捷方式 动态快捷方式使用ShortcutManager API 那么如何使用创建快捷方式ShortcutMana
  • Vagrant 命令停止工作:在 WIndows 上找不到命令

    我一直在尝试从 Windows 上的 Homestead 文件夹中启动 vagrant 但一直显示 bash 流浪汉 找不到命令 我认为这是 Windows 上命令配置的问题 请问 对此可以采取什么措施 提前致谢 好的 我遇到了系统环境变量
  • r 中的 Shell 命令不适用于目录名称中的空格

    我正在尝试使用 shell 命令从 R 运行简单的外部应用程序 shell C Program Files SomeApp bin Release SomeApp exe C Users SomeUser R Scripts RProjec
  • 防御性编程[关闭]

    Closed 这个问题是基于意见的 目前不接受答案 在编写代码时 您是否有意识地进行防御性编程 以确保较高的程序质量并避免您的代码被恶意利用的可能性 例如通过缓冲区溢出漏洞或代码注入 您始终应用于代码的 最低 质量水平是什么 在我的工作中
  • 以编程方式捕获 LogCat 或将其导出到文件?

    我想过滤一个logcat String myCommand logcat f sdcard output txt no filters keep writing myCommand logcat d f sdcard output txt
  • iOS 6 中的 viewDidLoad 调用过一次吗?

    小心 这个问题与最近的弃用viewDidUnload 我见过 很棒 且合乎逻辑的答案围绕这个主题 但显然事实证明他们错了 请谨慎行事 正如您所看到的 这个主题非常令人困惑 来自苹果的文档 然而系统会自动释放这些昂贵的资源 当视图未附加到窗口