用户界面的内存管理

赞恩·赫尔顿(Zane Helton)

我正在使用应用程序的用户界面,并且正在以编程方式进行操作。我了解保留周期背后的想法,并且对我可以确定一个保留周期很有信心,但是当我尝试避免保留周期时,Xcode会向我发出警告。

本质上,我正在创建一个名为的属性titleLabel该属性将具有我的标题,并对其进行viewDidLoad初始化,并将其放在我的视图中。唯一的问题是,我收到一条Xcode警告,内容为:

将保留对象分配给弱变量;分配后将释放对象

我的属性定义如下:

@property (nonatomic, weak) UILabel *titleLabel;

很显然,我可以通过改变解决Xcode的警告weak,以strong我的属性定义,但我相信这将创建一个保留周期(从我的理解),因为该按钮被握住视图控制器和视图控制器握住按钮。

谁能给我一些有关如何正确执行此操作的见解?

阿维

您的理解是有缺陷的。如果标签要保留对其视图控制器的引用,并且将属性定义为,则将有一个保留周期strong但是,视图不保留对其视图控制器的引用,因此没有循环。Xcode警告您,标签引用将在分配后消失。您甚至没有通过将其添加为子视图来保存(保留该视图),因为您在尝试时已将其释放。

不保留对控制器的引用的视图的一种准例外是表和集合视图,它们具有委托和数据源,通常是它们的管理视图控制器。但是,这些委托/数据源属性被定义为assign属性(存在另一组问题),因此那里也没有保留周期。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

登录用户而不授予访问管理界面的权限

来自分类Dev

设计用户界面的最佳语言?

来自分类Dev

设计用户界面的最佳语言?

来自分类Dev

阻止用户界面的空白消息?

来自分类Dev

修改django管理员用户界面

来自分类Dev

如何更新旧版Windows用户界面的外观?

来自分类Dev

过滤多个用户界面的预输入自动完成

来自分类Dev

如何避免滥用用户界面的角色和权限?

来自分类Dev

Unity-从脚本更改文本用户界面的Alpha颜色?

来自分类Dev

是否可以临时更改用户界面的语言?

来自分类Dev

用户定义的标记界面的用途是什么

来自分类Dev

Windows Phone-页面的通用用户界面

来自分类Dev

使用Xcode构建用户界面的最佳实践是什么?

来自分类Dev

如何避免滥用用户界面的角色和权限?

来自分类Dev

关注用户,如Django,管理界面中的twitter

来自分类Dev

仅允许管理员用户访问Resque Web界面

来自分类Dev

在 Django 管理界面中验证新用户密码

来自分类Dev

WordPress版本5.6在帖子/页面编辑时隐藏了后端管理界面的左列

来自分类Dev

是否有用于drupal管理界面的rest api(例如,用于清除缓存)

来自分类Dev

删除未管理Ubuntu界面的以太网网络设备

来自分类Dev

删除未管理Ubuntu界面的以太网网络设备

来自分类Dev

知道用户是哪个Facebook页面的管理员

来自分类Dev

用户界面的某些部分在Chrome应用中不断消失

来自分类Dev

在Android 4.4.2中发送没有用户界面的短信

来自分类Dev

Google Apps脚本用户界面的未来-UiInstance还是HTML服务?

来自分类Dev

如何在没有图形用户界面的情况下启动动脉示例

来自分类Dev

如何在不向用户公开界面的情况下使用Moq进行模拟?

来自分类Dev

具有良好用户界面的报告/仪表板工具

来自分类Dev

位置:修复了在移动设备上加载时弄乱用户界面的问题

Related 相关文章

  1. 1

    登录用户而不授予访问管理界面的权限

  2. 2

    设计用户界面的最佳语言?

  3. 3

    设计用户界面的最佳语言?

  4. 4

    阻止用户界面的空白消息?

  5. 5

    修改django管理员用户界面

  6. 6

    如何更新旧版Windows用户界面的外观?

  7. 7

    过滤多个用户界面的预输入自动完成

  8. 8

    如何避免滥用用户界面的角色和权限?

  9. 9

    Unity-从脚本更改文本用户界面的Alpha颜色?

  10. 10

    是否可以临时更改用户界面的语言?

  11. 11

    用户定义的标记界面的用途是什么

  12. 12

    Windows Phone-页面的通用用户界面

  13. 13

    使用Xcode构建用户界面的最佳实践是什么?

  14. 14

    如何避免滥用用户界面的角色和权限?

  15. 15

    关注用户,如Django,管理界面中的twitter

  16. 16

    仅允许管理员用户访问Resque Web界面

  17. 17

    在 Django 管理界面中验证新用户密码

  18. 18

    WordPress版本5.6在帖子/页面编辑时隐藏了后端管理界面的左列

  19. 19

    是否有用于drupal管理界面的rest api(例如,用于清除缓存)

  20. 20

    删除未管理Ubuntu界面的以太网网络设备

  21. 21

    删除未管理Ubuntu界面的以太网网络设备

  22. 22

    知道用户是哪个Facebook页面的管理员

  23. 23

    用户界面的某些部分在Chrome应用中不断消失

  24. 24

    在Android 4.4.2中发送没有用户界面的短信

  25. 25

    Google Apps脚本用户界面的未来-UiInstance还是HTML服务?

  26. 26

    如何在没有图形用户界面的情况下启动动脉示例

  27. 27

    如何在不向用户公开界面的情况下使用Moq进行模拟?

  28. 28

    具有良好用户界面的报告/仪表板工具

  29. 29

    位置:修复了在移动设备上加载时弄乱用户界面的问题

热门标签

归档